昨天出了LFS的更新包了,用了gcc-4.2.3 glibc-2.7 binutils-2.18 我也赶了个潮流,花了一天的时间,重新作了个 ${LFS}/tools ,其中的步驟有了新的变化。 首先是glibc库不再支持x86了(其实glibc2.6已经不支持了),所以必须加入编译参数 -march=i686 -mtune=native (其他平台类似) 才能make通过(这个参数害惨我了)。
还有就是某些在glibc2.5下通过的包由于glibc2.6/2.7 的不兼容必须修改才能通过,如gzip:由于futimens的从突, 必须修改 :
for file in gzip.c lib/utimens.{c,h} ; do /
cp -v $file{,.orig}
sed 's/futimens/gl_&/' $file.orig > $file
done
再有明显的变化是gcc-pass2有了新的更改硬链接的方法: for file in $(find gcc/config -name linux64.h -o -name linux.h)
do
cp -uv $file{,.orig}
sed -e 's@/lib/(64/)/?/(32/)/?/ld@/tools&@g' /
-e 's@/usr@/tools@g' $file.orig > $file
echo "
#undef STANDARD_INCLUDE_DIR
#define STANDARD_INCLUDE_DIR 0" >> $file
touch $file.orig
done
perl包 为了fix gcc问题: mv -v makedepend.SH{,.orig}
sed 's/command /command[ -]/' makedepend.SH.orig > makedepend.SH
由于体验的时间很短,暂时只有这么多, 将lfs进行到底……………………