Lihat:
http://www.kegel.com/crosstool/
Ini adalah situs otoritatif pada kompilasi silang di bawah GCC.
Anda benar, Anda memerlukan mips toolchain yang tepat untuk mengkompilasi silang aplikasi Anda dan Buildroot dapat melakukannya. Tetapi Anda mungkin perlu men-tweak menuconfig buildroot opsi.Tergantung pada keluaran file
, opsi Anda dapat berubah. Di sistem saya, aplikasi biner menginformasikan hal berikut:
ELF 32-bit MSB executable, MIPS, MIPS32 rel2 version 1 (SYSV)
Ini adalah opsi yang telah saya aktifkan untuk menuconfig Buildroot saya:
Target Architecture (mips) --->
Target Architecture Variant (mips 32r2) --->
Target ABI (o32) --->
Target options --->
Build options --->
(/opt/cross-mips-buildroot) Toolchain and header file location?
Toolchain --->
Toolchain type (Buildroot toolchain) --->
Kernel Headers (Linux 2.6.34.x kernel headers) --->
uClibc C library Version (uClibc 0.9.31.x) --->
[*] Build/install a shared libgcc?
[*] Enable compiler tls support
[*] Build gdb debugger for the Target
[*] Build gdb server for the Target
[*] Build gdb for the Host
GDB debugger Version (gdb 6.8) --->
[*] Enable large file (files > 2 GB) support?
[*] Enable WCHAR support
[*] Use software floating point by default
[*] Enable stack protection support
[*] Build/install c++ compiler and libstdc++?
[*] Include target utils in cross toolchain
Package Selection for the target --->
[*] BusyBox
[*] Run BusyBox's own full installation
Libraries --->
Networking --->
[*] libcurl
Text and terminal handling --->
[*] icu
-*- ncurses
Target filesystem options --->
Bootloaders --->
Kernel --->
Toolchain itu sendiri dipasang di /opt/cross-mips-buildroot . Anda dapat menemukan kompiler dan alat lainnya di /opt/cross-mips-buildroot/usr/bin/
Coba kompilasi hello world sederhana aplikasi dan lihat apakah Anda dapat menjalankannya di dalam sistem mips.
Catatan: konfigurasi ini tidak akan membangun kompiler C++. Jika Anda membutuhkannya, Anda dapat grep LIBSTDCPP .config
dan periksa apakah itu aktif atau tidak dan ubah sesuai keinginan Anda. Lalu make menuconfig
untuk mewujudkannya.