EABI还是GNU/Linux:如何正确选择合适的交叉工具链

转自:http://blog.csdn.net/jackyu613/article/details/6211217

并对里面的一些信息做了更新。


我们自己可以编译制作一个交叉编译工具链(Cross-compile Toolchain)来用,但为了方便、稳定起见,我们大多数时候会去选择成熟的第三方工具链。

codesourcery的交叉工具链是很常见的一种,以ARM为例,我们可以从http://www.codesourcery.com/sgpp/lite/arm/portal/subscription?@template=lite处下载到最新的版本:

Target OS Download
EABI Sourcery CodeBench Lite 2012.03-56
All versions...
uClinux Sourcery G++ Lite 2011.03-46
All versions...
GNU/Linux Sourcery CodeBench Lite 2012.03-57
All versions...
SymbianOS Sourcery CodeBench Lite 2012.03-42
All versions...


可以看到有4个OS平台版本可供选择,那么该选择哪一个下载呢?

在codesourcery的一个页面(http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/which-one)上我们找到了答案:

EABI/ELF

RTOS systems or "bare metal" systems where no operating system is present. These toolchains should not be used to build Linux kernels or applications.

uClinux

Systems running uClinux, i.e. Linux on CPUs without an MMU. Use Sourcery CodeBench to build both the uClinux kernel and applications.

GNU/Linux

Systems running "full" Linux, i.e., Linux on CPUs with an MMU. Use Sourcery CodeBench to build both the Linux kernel and applications.

Windows

Systems running Microsoft Windows 2000, or any later version.

Brew MP

Full support for the Qualcomm Brew MP platform


也就是说,如果打算用来编译linux kernel或者基于linux的应用程序,则应该选择GNU/Linux;EABI/ELF适用于没有操作系统(或者RTOS)的裸机;uClinux适用于没有MMU的Linux。

 

这下明白了?


你可能感兴趣的:(windows,linux,Microsoft,Build,brew,工具)