手斧Linux – 从LFS到Funtoo (17)

第6节 编译gcc  64位 pass1

用lfs用户所在的系统的gcc做出/tools/bin/x86_64-lfs-linux-gnu-gcc。

编译时,将mpfr gmp mpc的源码拷入gcc的目录下编译。

tar xvfj ../gcc-4.6.1.tar.bz2

mv gcc-4.6.1 gcc-4.6.1-p1

cd gcc-4.6.1-p1

tar -jxf ../../mpfr-3.1.0.tar.bz2

mv -v mpfr-3.1.0 mpfr

tar -jxf ../../gmp-5.0.2.tar.bz2

mv -v gmp-5.0.2 gmp

tar -zxf ../../mpc-0.9.tar.gz

mv -v mpc-0.9 mpc

patch -Np1 -i ../../gcc-4.6.1-cross_compile-1.patch

cd ..

mkdir -v gcc-build-p1-x86_64

cd gcc-build-p1-x86_64

../gcc-4.6.1-p1/configure     --target=$LFS_TGT --prefix=/tools  --libdir=/tools/lib64   --disable-nls --disable-shared --disable-multilib     --disable-decimal-float --disable-threads     --disable-libmudflap --disable-libssp     --disable-libgomp --disable-libquadmath     --disable-target-libiberty --disable-target-zlib     --enable-languages=c --without-ppl --without-cloog  --enable-initfini-array   --with-mpfr-include=$(pwd)/../gcc-4.6.1-p1/mpfr/src     --with-mpfr-lib=$(pwd)/mpfr/src/.libs

查看config.log,可以看到以下内容:

configure:4339: checking whether we are cross compiling

configure:4341: result: no

CC_FOR_BUILD='$(CC)'

CC='gcc'

AR_FOR_TARGET='/tools/x86_64-lfs-linux-gnu/bin/ar'

说明没有使用交叉编译,也成功指定了--target。

make 2>&1|tee out.make

make install DESTDIR=$(pwd)/img 2>&1|tee out.install

mv img/tools/lib/* img/tools/lib64

rm -rf img/tools/lib

cp -rfv img/tools/* /tools/

ln -vs libgcc.a `$LFS_TGT-gcc -print-libgcc-file-name | \

    sed 's/libgcc/&_eh/'`

cd ..

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值