Ubuntu lfs gcc无法编译
我正在努力使gcc从零开始符合Linux。但是我遇到了一个错误。Ubuntu lfs gcc无法编译,ubuntu,linux-from-scratch,Ubuntu,Linux From Scratch,我正在努力使gcc从零开始符合Linux。但是我遇到了一个错误。 可能有用的附加信息: 0lfs手册版本7.7-systemd 1.我正在运行ubuntu linux uname-r:4.4.0-142-generic 2.我已经检查了版本和库 bash, version 4.3.11(1)-release /bin/sh -> /bin/dash Binutils: (GNU Binutils for Ubuntu) 2.24 bison (GNU Bison) 3.0.2
可能有用的附加信息:
0lfs手册版本7.7-systemd
1.我正在运行ubuntu linux
uname-r:4.4.0-142-generic
2.我已经检查了版本和库
bash, version 4.3.11(1)-release
/bin/sh -> /bin/dash
Binutils: (GNU Binutils for Ubuntu) 2.24
bison (GNU Bison) 3.0.2
/usr/bin/yacc -> /usr/bin/bison.yacc
bzip2, Version 1.0.6, 6-Sept-2010.
Coreutils: 8.21
diff (GNU diffutils) 3.3
find (GNU findutils) 4.4.2
GNU Awk 4.0.1
/usr/bin/awk -> /usr/bin/gawk
gcc (Ubuntu 4.8.4-2ubuntu1~14.04.4) 4.8.4
g++ (Ubuntu 4.8.4-2ubuntu1~14.04.4) 4.8.4
(Ubuntu EGLIBC 2.19-0ubuntu6.14) 2.19
grep (GNU grep) 2.16
gzip 1.6
Linux version 4.4.0-142-generic (buildd@lcy01-amd64-006) (gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.4) ) #168~14.04.1-Ubuntu SMP Sat Jan 19 11:26:28 UTC 2019
m4 (GNU M4) 1.4.17
GNU Make 3.81
GNU patch 2.7.1
Perl version='5.18.2';
sed (GNU sed) 4.2.2
tar (GNU tar) 1.27.1
makeinfo (GNU texinfo) 5.2
xz (XZ Utils) 5.1.0alpha
g++ compilation OK
这是我正在运行的代码
../gcc-4.9.2/configure \
--target=$LFS_TGT \
--prefix=/tools \
--with-sysroot=$LFS \
--with-newlib \
--without-headers \
--with-local-prefix=/tools \
--with-native-system-header-dir=/tools/include \
--disable-nls \
--disable-shared \
--disable-multilib \
--disable-decimal-float \
--disable-threads \
--disable-libatomic \
--disable-libgomp \
--disable-libitm \
--disable-libquadmath \
--disable-libsanitizer \
--disable-libssp \
--disable-libvtv \
--disable-libcilkrts \
--disable-libstdc++-v3 \
--enable-languages=c,c++
更新这是第5章中的第一个工具链构建,我解包了gcc源代码并使用了这些新的源代码。首先,我强烈建议使用LFS书籍的当前版本(截至撰写时为9.0)。您使用的7.7版现在已经快5年了 其次,您的主机系统(Ubuntu)不符合LFS要求:
/bin/sh
应该是指向/bin/bash
的链接。在您的情况下,它链接到/bin/dash
。简单的修复方法是手动更改它。根目录:rm/bin/sh
ln-sv/bin/bash/bin/sh
大家好,欢迎来到SO。为了帮助你,我们需要更多的信息。构建lfs 7.7有什么原因吗?它有点旧,最新的稳定版本是9.0。还有,在lfs的书中,这发生在哪里?它是第一个工具链构建,第二个,还是第6章中的最终构建?您是否在上一次构建之后删除了gcc目录,解压了gcc源代码,并正在处理这个新的源代码?请更新你的问题。哦,这是我第一次问这个问题,我感到非常兴奋。谢谢我的朋友们。我更新我的问题。看来我应该用新版9.0来学习?谢谢!现在我使用的是最新版本,实际上我遇到了符号问题。我会在学习期间注意GLIBC的。@xiaoWu太棒了!如果我的答案确实帮助了你,请接受它(标记问题被解决)并考虑投票。谢谢:)
../gcc-4.9.2/configure \
--target=$LFS_TGT \
--prefix=/tools \
--with-sysroot=$LFS \
--with-newlib \
--without-headers \
--with-local-prefix=/tools \
--with-native-system-header-dir=/tools/include \
--disable-nls \
--disable-shared \
--disable-multilib \
--disable-decimal-float \
--disable-threads \
--disable-libatomic \
--disable-libgomp \
--disable-libitm \
--disable-libquadmath \
--disable-libsanitizer \
--disable-libssp \
--disable-libvtv \
--disable-libcilkrts \
--disable-libstdc++-v3 \
--enable-languages=c,c++