我的问题:
我一直在尝试在我的VirtualBox 3 i386计算机上安装OpenSolaris 2009.06时编译,构建和安装GCC 4.4.2。但是我在运行make时遇到同样的错误:
> checking whether ln -s works... yes
checking for i386-pc-solaris2.11-gcc... /src/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/src/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/gnu/i386-pc-solaris2.11/bin/ -B/usr/gnu/i386-pc-solaris2.11/lib/ -isystem /usr/gnu/i386-pc-solaris2.11/include -isystem /usr/gnu/i386-pc-solaris2.11/sys-include
checking for suffix of object files... configure: error: in `/src/gcc-4.4.2/i386-pc-solaris2.11/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details.
make[2]: *** [configure-stage1-target-libgcc] Error 1
make[2]: Leaving directory `/src/gcc-4.4.2'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/src/gcc-4.4.2'
make: *** [all] Error 2
尝试解决方案:
我尝试了这个问题的答案: Problem compiling gcc 4.4.0 on OpenSolaris 2009.6即
./ configure --prefix = / usr / gnu --with-gmp = / usr / gnu --with-mpfr = / usr / gnu --with-as = / usr / sfw / bin / gas - with-gnu-as --with-gnu-ld
我尝试了GNU GCC的平台特定解决方案: GNU Solaris specific build instructions 即
./ configure --prefix = / usr / gnu --with-gmp = / usr / gnu --with-mpfr = / usr / gnu --with-as = / usr / sfw / bin / gas - with-gnu-as --with-ld = / usr / ccs / bin / ld --without-gnu-ld --enable-shared
尽管使用上面两个解决方案运行./configure,我仍然会遇到相同的错误
任何帮助将不胜感激! 谢谢!
答案 0 :(得分:1)
你能用现有的GCC编译程序吗?
如果没有,您需要解决这个问题。
如果可以,那么你需要看一下那个怪异的7参数命令(那个命令'检查i386-pc-solaris2.11-gcc' - 为什么这7个参数?)。
你在运行'make bootstrap'吗?
如果没有,当你这样做会发生什么?
如果是这样,处理的下落是什么? (这是第1阶段,第2阶段,还是什么?)
您是否正在使用建议的设置,例如/src/gcc-4.4.2中的GCC源代码和/src/gcc-4.4.2-obj中的目标文件?< / p>
如果没有,请这样做。使用:
cd /src/gcc-4.4.2-obj; ../gcc-4.4.2/configure ...
你使用哪个shell?
在常规Solaris 10(不是OpenSolaris - 和SPARC,而不是Intel)上,我必须在环境中设置CONFIG_SHELL = / bin / ksh以进行编译(默认情况下,它使用/ bin / sh,但/ bin Solaris 10上的/ sh是Bourne shell,Java部分(IIRC)中有一个脚本,它使用Bash / Korn / POSIX shell表示法,如
$(cmd ...)
)。但是,这通常会影响处理的后期阶段。
但是,我在Solaris 10上有GCC 4.4.2没有问题(使用GCC 4.4.1作为引导程序编译器)。