二、交叉编译连制作
本部分并未进行完整的编译连制作,因为omap3530开发板的光盘里提供的ubuntu8.04系统中开发环境已经完全搭建好,当然,有完整的交叉编译链,故,将8.04系统中的交叉编译链拷贝出来到10.04系统中,完事儿。
LINUX交叉编译工具链和GCC是什么关系啊
编译工具链一般最简化的为binutils + gcc + glibc + kernel-header 组合的环境。GCC 就是编译器,他的输出每次安装只能有针对一个架构的指令输出。如果要多个架构输出,那就要装多个GCC ,所以编译工具链里面会有一个GCC 。
交叉编译就是跨架构编译,编译出来的程序不能在本机执行(当然有例外情况)。所以这个时候就需要交叉编译工具链。
工具链光有GCC 是不行的,还需要一个binutils 的二进制连接器,以及一个最基本的目标架构的C 库,C 库还需要一个目标架构的内核源代码才能完全工作(当然不是必须的,但编译有的时候需要)
又因为GCC 、binutils 不能实现单软件同时多架构输出,所以需要单独另装,又加上 C 库和内核头文件需要目标架构的东西而不能用本机本地架构的数据。
所以一个交叉编译工具链就是针对目标架构准备的单独安装单独使用的binutils + gcc + glibc + kernel-header 的集合了。
具体步骤:
1、复制OMAP3530原配内核代码/home/davinci/ICETEKWork/projects/kernel
# cp -av /home/davinci/ICETEKWork/projects/kernel /mnt/windows/omalinu
2、复制交叉编译链
cp -av /opt/codesourcery /mnt/windows/
2.修改环境变量,把交叉编译器的路径加入到PATH。
修改~/.bashrc文件,编辑.bash_profile也行
#vim ~/.bashrc
在最后加上:
export PATH=$PATH:/opt/codesourcery/arm-none-linux-gnueabi/arm-2007q3/bin
export PATH
也可以:
#export PATH=$PATH:/usr/local/arm/3.4.1/bin
注:(这只能在当前的终端下才是有效的!)