【问题标题】:Linker error: undefined reference to `std::ctype<char>::_M_widen_init()链接器错误:未定义对 `std::ctype<char>::_M_widen_init() 的引用
【发布时间】: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++?
  • 那么这个问题解决了吗?
  • 您找到解决方案了吗?

标签: c++ c


【解决方案1】:

看起来它是这里不匹配的标准库的一部分。我能想到的两个最有可能的答案:

  • 您没有使用相同版本的 g++ 编译和链接整个项目(包括所有库)。
  • 您用于标准库不匹配的标头/库路径,并且您从一个库版本获取标头,但从另一个版本获取 .so 库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-11
    • 2010-12-25
    • 2022-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多