(solaris)ld:致命:。。。版本';GCC_4.2.0';不存在 我试图在这个机器上首次编译一个C++程序(这不是我的),所以我写了一个简单的Hello World。我的编译命令出错 >g++ testing.cpp -L/usr/local/lib ld: fatal: file /usr/local/lib/libgcc_s.so: version 'GCC_4.2.0' does not exist: required by file /usr/local/lib/libstdc++.so
但我有一件事:(solaris)ld:致命:。。。版本';GCC_4.2.0';不存在 我试图在这个机器上首次编译一个C++程序(这不是我的),所以我写了一个简单的Hello World。我的编译命令出错 >g++ testing.cpp -L/usr/local/lib ld: fatal: file /usr/local/lib/libgcc_s.so: version 'GCC_4.2.0' does not exist: required by file /usr/local/lib/libstdc++.so,c++,gcc,linker,C++,Gcc,Linker,但我有一件事: >file /usr/local/lib/libgcc_s.so /usr/local/lib/libgcc_s.so: ELF 32-bit LSB dynamic lib 80386 Version 1 [FPU], dynamically linked, not stripped 如果我做了以下任何一件事,我会发出咯咯的笑声: >g++ testing.cpp >g++ testing.cpp -L/usr/sfw/bin >g++ tes
>file /usr/local/lib/libgcc_s.so
/usr/local/lib/libgcc_s.so: ELF 32-bit LSB dynamic lib 80386 Version 1 [FPU], dynamically linked, not stripped
如果我做了以下任何一件事,我会发出咯咯的笑声:
>g++ testing.cpp
>g++ testing.cpp -L/usr/sfw/bin
>g++ testing.cpp -L/local/bin
我得到了同样的错误(目录没有改变,可能是因为bin中没有libgcc_?)
位于/usr/local/lib/gcc/i386-pc-solaris2.10/
我看到3.4.6
和4.3.3
我看到一个符号链接/usr/local/lib/libcc_.so
指向2001年创建的libgcc_.so.1
我在别处看到了以下检查版本的方法,但它不返回任何结果:
/usr/local/lib>strings libgcc_s.so.1 | grep GCC
我的问题是:
感谢您的阅读和提供的任何建议。我怀疑gcc库,请检查操作系统的版本(32/64位)并相应地安装gcc库。哇。我觉得很傻。我所需要做的就是通过将命令更改为来指定要使用的特定g++版本
/usr/sfw/bin/g++ testing.cpp
塔达!程序编译并运行成功
如果其他人有这个问题,运行哪个g++
并尝试各种选项可能会有所帮助
>which g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++
嗯,我正在尝试使用现有的库,因为它们已经成为机器的一部分很多年了,而其他程序几年前才编译好。(另外,即使是64位,我也尝试在我的编译器命令中使用
-m32
标志,但它并没有改变错误。)谢谢。顺便说一句,您在这里给出的响应并不是真正的答案。。。下一次也许会考虑评论。
>which g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++
g++ is /usr/local/bin/g++
g++ is /usr/sfw/bin/g++
g++ is /local/bin/g++