Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57384
  • 博文数量: 20
  • 博客积分: 1571
  • 博客等级: 上尉
  • 技术积分: 145
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-01 11:10
文章存档

2012年(14)

2007年(6)

我的朋友

分类: LINUX

2012-03-28 19:09:04

一、下载交叉编译工具链crosstool-0.43.tar.gz
    地址:
二、复制crosstool-0.43.tar.gz到/opt/目录下。
    $tar zxf crosstool-0.43.tar.gz
    $cd crosstool-0.43
    $ls
   查看到很多文件,其中有很多文件,如:arm.dat、demo-arm.sh、gcc-3.3.6-glibc-2.3.2-tls.dat等。
   如果我们想交叉编译基于ARM平台运行的程序,则我们打开demo-arm.sh文件。
    $vim demo-arm.sh
   会看到如下内容:
#!/bin/sh
# This script has one line for each known working toolchain
# for this architecture.  Uncomment the one you want.
# Generated by generate-demo.pl from buildlogs/all.dats.txt

set -ex
TARBALLS_DIR=/home/downloads  (下载的软件包放置路径)
RESULT_TOP=/opt/crosstool    (最终生成的交叉编译工具/bin/存放目录)
export TARBALLS_DIR RESULT_TOP
GCC_LANGUAGES="c,c++"
export GCC_LANGUAGES

# Really, you should do the mkdir before running this,
# and chown /opt/crosstool to yourself so you don't need to run as root.
mkdir -p $RESULT_TOP

……
#eval `cat arm.dat gcc-3.3.6-glibc-2.2.5.dat` sh all.sh --notest
#eval `cat arm.dat gcc-3.3.6-glibc-2.3.2.dat` sh all.sh --notest
eval `cat arm.dat gcc-3.3.6-glibc-2.3.2-tls.dat` sh all.sh --notest
                                             (去掉前面的#号,则变成待生成的交叉编译工具)
……
 
三、打开gcc-3.3.6-glibc-2.3.2-tls.dat文件
   $vim gcc-3.3.6-glibc-2.3.2-tls.dat
   会看到要求参与编译的文件包:binutils-2.15.tar,gcc-3.3.6.tar,glibc-2.3.2.tar,
   glibc-linuxthreads-2.3.2.tar,linux-2.6.9.tar,linux-libc-headers-2.6.12.0.tar。
   这些文件包的下载地址
   
   将下载的这些文件一起放到arm.dat文件中要求的,TARBALLS_DIR=/home/downloads下面。
四、然后打开arm.dat文件。
   $vim arm.dat
   修改 TARGET=arm-s3c44b0-linux (改为适合你平台的名称即可)
五、以root身份编译
   $sudo
   password  *****
   #./demo-arm.sh
   经过漫长的等待,最终编译结束。会在/opt/目录下生成一个crosstool的文件夹。这个就是交叉编译工具的存放目录。
六、测试一下
   #export PATH=$PATH:/opt/crosstool/gcc-3.3.6-glibc-2.3.2/arm-s3c44b0-linux/bin
   自己写一个测试程序test.c测试一下
   #arm-s3c44b0-linux-gcc -o test test.c
   #file test
   会发现它是arm平台执行文件。那就OK了。
  
 
阅读(343) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

六如2012-05-24 00:09:52

我是月老: 编译很漫长吗大概要多久啊?.....
看电脑配置。现在一般1个小时以内可以搞定。

我是月老2012-03-30 01:04:43

编译很漫长吗大概要多久啊?