我正在尝试在Ubuntu 11.04 64位上安装GCC 4.4.6并遇到一些麻烦。由于该程序包未附带此发行版,因此我尝试从源代码构建它。它需要我从包装系统安装的GMP和MPFR。我按照建议使用不同的源代码,构建和安装目录。目标=构建=主机。
--prefix
除外我不提供任何配置选项:
gcc-4.4.6/configure --prefix=[absolute_path]/install/gcc-4.4.6
还使用了这些环境变量:
CXX=/usr/bin/g++-4.4
CC=/usr/bin/gcc-4.4
因为(gcc和g ++默认为4.5,也安装了)
在编译gcc-4.4.6 / libgcc /../ gcc / libgcc2.c 时, make
产生以下错误(似乎是在构建引导编译器之后)
/usr/include/gnu/stubs.h:7:27:错误:gnu / stubs-32.h:没有这样的文件或目录
文件名可能表示这是64/32位问题。在64位机器上构建GCC时需要考虑一些事项吗?
config.log说:
uname -m = x86_64
uname -r = 2.6.38-11-generic
uname -s = Linux
uname -v = #50-Ubuntu SMP Mon Sep 12 21:17:25 UTC 2011
/usr/bin/uname -p = unknown
/bin/uname -X = unknown
/bin/arch = unknown
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
configure:1563:检查构建系统类型 configure:1581:result:x86_64-unknown-linux-gnu configure:1616:检查主机系统类型 configure:1630:result:x86_64-unknown-linux-gnu configure:1638:检查目标系统类型 configure:1652:result:x86_64-unknown-linux-gnu configure:1696:检查与BSD兼容的安装 configure:1762:result:/ usr / bin / install -c configure:1773:检查ln是否有效 configure:1795:结果:是的 configure:1799:检查ln -s是否有效 configure:1803:结果:是的 configure:3002:检查gcc configure:3028:result:/usr/bin/gcc-4.4 configure:3274:检查C编译器版本 configure:3277:/usr/bin/gcc-4.4 --version& 5 gcc-4.4(Ubuntu / Linaro 4.4.5-15ubuntu1)4.4.5 版权所有(C)2010 Free Software Foundation,Inc。 这是免费软件;查看复制条件的来源。没有 保证;甚至不适用于适销性或特定用途的适用性。
答案 0 :(得分:1)
问题是缺少一个包:“libc6-dev-i386”
apt-file update
apt-file search stubs-32.h
libc6-dev-i386:/usr/include/gnu/stubs-32.h
apt-get install libc6-dev-i386
解决了它!