LFS on Ubuntu(4) 一時的環境の構築 (ツールチェーンの調整)

ツールチェーンの調整

SPECS=`dirname $($LFS_TGT-gcc -print-libgcc-file-name)`/specs
$LFS_TGT-gcc -dumpspecs | sed \
  -e 's@/lib\(64\)\?/ld@/tools&@g' \
  -e "/^\*cpp:$/{n;s,$, -isystem /tools/include,}" > $SPECS
echo "New specs file is: $SPECS"
unset SPECS

健全性検査 (sanity check)

echo 'main(){}' > dummy.c
$LFS_TGT-gcc -B/tools/lib dummy.c
readelf -l a.out | grep ': /tools'

テストファイルの削除

rm -v dummy.c a.out

Binutils のインストール

$ rm -rf binutils-build
$ mkdir -v binutils-build
$ cd binutils-build
$ CC="$LFS_TGT-gcc -B/tools/lib/" \
   AR=$LFS_TGT-ar RANLIB=$LFS_TGT-ranlib \
   ../binutils-2.20/configure --prefix=/tools \
   --disable-nls --with-lib-path=/tools/lib
$ make
$ make install

次に行う「再調整」の作業に向けてリンカ (梨花?) を準備

make -C ld clean
make -C ld LIB_PATH=/usr/lib:/lib
cp -v ld/ld-new /tools/bin