linux源码解压出错,交叉编译工具链(解决sstrip编译出错问题)

5、配置并编译crosstool-ng-1.8.1

$./configure--prefix=/home/linux/s3c2410-2.6.35/toolchain/toolchain-install

$make

$make install

6、配置工具链选项

$cd ../toolchain-build

$cp ../crosstool-ng-1.8.1/samples/arm-unknown-linux-gnueabi/* ./

$mv crosstool.config .config

$../toolchain-install/bin/ct-ng menuconfig

Pathsand miscoptions --->

(${HOME}/src)Local tarballs directory

(${HOME}/x-tools/${CT_TARGET})Prefix directory

修改为

Pathsand miscoptions --->

(/home/linux/Downloads)Local tarballs directory //源码包存放路径

(/home/linux/toolchain)Prefix directory //工具生成后的安装路径

(1)Number of parallel jobs

这里还有一个至关重要的选项。

forbiden download一定要选上,否则会出现下面的下载原文件。我们自己已经下载好了所以不要再下载了。。

Targetoptions --->

(armv4t)Architecture level

(arm9tdmi)Emit assembly for CPU

(arm920t)Tune for CPU

Ccompiler --->

[] Java

Ccompiler --->

(crosstool-NG-${CT_VERSION}-farsight)gcc ID string

OperatingSystem --->

[] Check installed headers

Toolchainoptions --->

(none)Tuple's vendor string

修改.config文件,将文件中的2.6.33.2全部改为2.6.35

共2处

7、目标代码准备

拷贝下面文件到/home/linux/Downloads目录下:

binutils-2.19.1.tar.bz2

gcc-4.3.2.tar.bz2

glibc-ports-2.9.tar.bz2

linux-2.6.35.tar.bz2

ncurses-5.7.tar.gz

dmalloc-5.5.2.tgz

gdb-6.8.tar.bz2

gmp-4.3.2.tar.bz2

ltrace_0.5.3.orig.tar.gz

strace-4.5.19.tar.bz2

duma_2_5_15.tar.gz

glibc-2.9.tar.bz2

libelf-0.8.13.tar.gz

mpfr-2.4.2.tar.bz2

Sstrip.c

出错:Buildfailed in step 'Installing sstrip'

[ERROR]

Error happened

in'/home/linux/Desktop/paper/crosstools/toolchain_install/lib/ct-ng-1.8.1/scripts/functions'in

function 'CT_DoExecLog' (line unknown, sorry)

[ERROR]

called

from'/home/linux/Desktop/paper/crosstools/toolchain_install/lib/ct-ng-1.8.1/scripts/build/binutils/sstrip.sh'at

line # 28 in function 'do_sstrip'

[ERROR]

called

from'/home/linux/Desktop/paper/crosstools/toolchain_install/lib/ct-ng-1.8.1/scripts/crosstool-NG.sh'at

line # 586 in function 'main'

[ERROR] Look at '/home/linux/Desktop/paper/crosstools/toolchain/build.log'for more info on this error.

[ERROR] (elapsed: 6:49.98)

[06:50]/ make: *** [build] Error 1

解决:

Sstrip.c从官网下载下来的需要加入头文件

#include

#include

8、工具链编译

$../toolchain-install/bin/ct-ng build

这个过程比较时间比较长,2小时左右

9、环境变量的添加

修改文件/etc/bash.bashrc添加如下内容

export PATH=$PATH:/home/linux/toolchain/bin

重启配置文件

$source bash.bashrc

工具链的测试

$arm-none-linux-gnueabi-gcc –v

Using built-in specs.

Target:arm-none-linux-gnueabi

Configured with: /home/linux/s3c2410-2.6.35/toolchain/toolchain-build/targets/src/gcc-4.3.2/configure

--build=i686-build_pc-linux-gnu-host=i686-build_pc-linux-gnu --target=arm-none-linux-gnueabi--prefix=/home/linux/toolchain

--with-sysroot=/home/linux/toolchain/arm-none-linux-gnueabi//sys-root--enable-languages=c,c++,fortran

--disable-multilib--with-arch=armv4t --with-cpu=arm9tdmi

--with-tune=arm920t--with-float=soft

--with-pkgversion=crosstool-NG-1.8.1-none--disable-sjlj-exceptions

--enable-__cxa_atexit

--disable-libmudflap--with-gmp=/home/linux/s3c2410-2.6.35/toolchain/toolchain-build/targets/arm-none-linux-gnueabi/build/static--with-mpfr=/home/linux/s3c2410-2.6.35/toolchain/toolchain-build/targets/arm-none-linux-gnueabi/build/static--enable-threads=posix

--enable-target-optspace--with-local-prefix=/home/linux/toolchain/arm-none-linux-gnueabi//sys-root--disable-nls

--enable-symvers=gnu --enable-c99 --enable-long-long

Threadmodel: posix

gccversion 4.3.2 (crosstool-NG-1.8.1-none)

这个时候我们的工具链就生成了

重新编译交叉工具链,出现几个错误,记录在下,对读者有用请留言。。。原创的哟

选了 forbid download 的就不要看了。。。。。

3、出现retriving的错误时,不要慌张。。看看对应的网址对不对。。举个例子,笔者遇到过rectriving sstrip的错误。

怎么找也找不到原因,log里也是现实retriving sstrip错误。没有详细信息。但是在crosstool-ng-1.8.1\scripts\build\binutils\sstrip.sh中找到了问题

第9行CT_GetFile sstrip .c ,

这个网址根本没有sstrip。。于是我找了个有sstrip的网站

https://dev.openwrt.org/browser/trunk/tools/sstrip/src/sstrip.c

注意只要把前面https://dev.openwrt.org/browser/trunk/tools/sstrip/src/写进去就ok了。

4、说下里面的一些像函数一样的东东的意义,,

CT_GetFile 下载文件,

CT_DoStep INFO 打印信息

CT_DoLog EXTRA 打印日志

最后,说一下,baidu坑爹。。。google才是王道

转载自:http://blog.csdn.net/yongyici123/article/details/7651383

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值