【发布时间】:2011-05-01 10:19:37
【问题描述】:
我在尝试运行示例项目时遇到链接器错误。你能告诉我如何解决这个问题吗?
提前致谢。
make[1]: 进入目录`/home/rumi/MobiusProject/Multiproc-Paper/Transformer/ssg' /usr/bin/g++ -w -DMOBIUS_LITTLE_ENDIAN -DMOBIUS_LINUX -m32 -o ssgGen_Linux -L../../lib/Linux_lib/ -L/home/rumi/Mobius/mobius/Mobius-2.3/Cpp/lib/Linux_lib - L/home/rumi/Mobius/mobius/Mobius-2.3/Cpp/external/lib/Linux -L../../external/lib/Linux -lgenMain -lgen -lvary_num_compRangeStudy -lmulti_proc_PVPV -lmulti_procRJ -lmemory_moduleSAN -lcpu_moduleSAN -lio_port_moduleSAN -lerrorhandlersSAN -lTRex -lStudy -lPV -lComposer_RepJoin -lSAN -lbase -lstate -lmobutil -ldist -lstdc++ -lcrypto -lpthread -lm make[1]: 离开目录`/home/rumi/MobiusProject/Multiproc-Paper/Transformer/ssg' make: 离开目录`/home/rumi/MobiusProject/Multiproc-Paper/Transformer/ssg' /home/rumi/Mobius/mobius/Mobius-2.3/Cpp/lib/Linux_lib/libgenMain.a(Main.o):在函数`commandline(int, char**, int&, char*&, char*&)' : Main.cpp:(.text+0x494): undefined reference to `std::ctype::_M_widen_init() const' Main.cpp:(.text+0x4b1): undefined reference to `std::ctype::_M_widen_init() const' Main.cpp:(.text+0x584): 未定义引用`std::ctype::_M_widen_init() const' /home/rumi/Mobius/mobius/Mobius-2.3/Cpp/lib/Linux_lib/libgenMain.a(Main.o):在函数“main”中: Main.cpp:(.text+0x894): undefined reference to `std::ctype::_M_widen_init() const' Main.cpp:(.text+0x8b4): undefined reference to `std::ctype::_M_widen_init() const' /home/rumi/Mobius/mobius/Mobius-2.3/Cpp/lib/Linux_lib/libStudy.a(BaseStudyClass.o):BaseStudyClass.cpp:(.text+0x5c4): 更多未定义的引用`std::ctype:: _M_widen_init() const' 跟随 collect2: ld 返回 1 个退出状态 make[1]: *** [exec3] 错误 1 make: *** [opt] 错误 2【问题讨论】:
-
也许 libgenMain.a 是用不同版本的
g++编译的?您可能需要重新编译该库和/或确保所有编译步骤使用相同的g++版本。 -
有什么办法可以知道编译某个库是用什么版本的g++?
-
那么这个问题解决了吗?
-
您找到解决方案了吗?