Linux ARM交叉编译工具链制作过程
时间:11-21
来源:互联网
点击:
M68k | m68k-linux |
M88k | m88k-linux |
Alpha | alpha-linux |
Sparc | sparc-linux |
Sparc64 | sparc64-linux |
Binutils是GNU工具之一,它包括连接器、汇编器和其他用于目标文件和档案的工具,它是二进制代码的处理维护工具。安装Binutils工具包含的程序有addr2line、ar、as、c++filt、gprof、ld、nm、objcopy、objdump、ranlib、readelf、size、strings、strip、libiberty、libbfd和libopcodes。对这些程序的简单解释如下。
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Ø
Binutils工具安装依赖于Bash、Coreutils、Diffutils、GCC、Gettext、Glibc、Grep、Make、Perl、Sed、Texinfo等工具
下面将分步介绍安装binutils-2.19.2的过程。
[root@localhost
[root@localhost
[root@localhost
创建Makefile:
[root@localhost
注意:每个工具的文件名的前缀都是前面为TARGET变量设定的值。如果目标板arm-linux,那么这些工具的文件名前缀就会是arm-linux-。这样就可以根据目标板类型找到正确的工具程序。
五、建立内核头文件
在这里我们使用时2.6.29的内核版本,因为交叉工具链工具链是针对特定的处理器和操作系统的,因此在编译之前就需要对linux内核进行配制,可以通过“make config”或“make menuconfig”命令对内核进行配制,配制完成后,在linux源文件的目录下就会生成一个.config文件,这就是我们所需要的文件。
Note: 目标板的内核版本是2.6.29
[root@localhost
[root@localhost
[root@localhost
[root@localhost
给Linux内核打补丁:
[root@localhost
然后就是配置内核,第一步是修改Makefile
修改 Makefile:
ARCH = arm
CROSS_COMPILE = arm-linux- menuconfig
接着使用make menuconfig进入内核配置菜单
或者直接写:
# make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig
System Type -à
配置完退出并保存。
配置完须执行make,参数如下:
[root@localhost linux-2.6.29]# make ARCH=arm CROSS_COMPILE=arm-linux- (执行过程中有错误出现也没关系,主要目的是产生头文件version.h和autoconf.h)
执行完检查一下内核目录中的/kernel/linux-2.6.29/include/linux/version.h和autoconf.h文件是不是生成了,这是编译glibc要用到的。version.h 和 autoconf.h 文件的存在,说明你生成了正确的头文件。
接下来建立工具链需要的include目录,并将内核头文件复制过去。
[root@localhost
[root@localhost
可以查看一下,经过编译可以自动生成。如果已经生成链接,则不必重新链接。(2.6.29已自动生成)
[root@localhost
LinuxARM交叉编译工具 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)