打印

linux交叉编译链

[复制链接]
1274|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhangliang571|  楼主 | 2011-12-23 21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以《ARM嵌入式linux系统开发从入门到精通》书中内容整理得

交叉编译工具链的构建有两种方法比较常用:
1分步构建(比较麻烦)
2Crosstool工具构建


   Crosstool-0.42.tar.gz
  http://Kegel.com/crosstool
   linux-2.6.10.tar.gz
  ftp.kerel.org
   binutils-2.15.tar.bz2
  ftp.gnu.org/binutils
   gcc-3.3.6.tar.gz


   glibc-2.3.2.tar.bz2

   glibc-linuxthreads-2.3.2.tar.gz

  linux-libc-headers-2.6.12.0.tar.bz2

上述这些源代码可以在我的爱问上下载爱问下载;(有户名为:zhangliang
-----------------------------------------------------------------------------------------
以上工作完成后开始:
进入终端。输入“su”(switch user切换用户的意思,默认切换到root权限下),新建/home/mike/downloads目录,将上表的源代码放到这里。在mike中解压缩crosstool-0.42.tar.gz,命令如下:
#cd  /home/mike
#tar -xvzf crosstool-0.42.tar.gz
---------------------------------------------------------------------------
2建立脚本文件
#cp demo-arm.sh  arm.sh   demo-arm.sh在解压后的文件件中,目的是生成一个以它为模板的arm.sh
#vi  arm.sh  
进入后要修改如下:
TARBALLS-DIR=/home/mike/downloads  定义工具链源码所在位置
RESULT-TOP为工具链安装目录
eval 'cat arm.dat  gcc-3.3.6-glibc-2.3.2.dat '  sh all.sh --notest
3建立配置文件
  在arm.sh脚本中要注意arm.datgcc-336glibc232dat两个文件。
cat参看arm.sh并修改TARGET=arm-linux-
还要修改gccdat文件中GCC-DIR=gcc-3.3.6
4执行脚本
   #cd  crosstool-0.42
   #./arm.sh
需要经过数小时漫长编译,会在/opt/crosstool目录下生成新的交叉编译工具,其中有我们要用的arm-linux-gcc
5添加环境变量
  将生成的编译工具的路径添加到环境变量PATH上去。在系统/etc/bashrc文件的最后添加下面一行:export  PATH=/opt/crosstool/gcc-3.3.3-glibc-2.3.2/arm-linux/bin:$PATH

以上就构建完成了交叉编辑工具链,可以测试一下这个工具链,编一个小C程序,用法和gcc完全一样。

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

15

帖子

1

粉丝