【问题标题】:Qt5.1 project with C++11 support - linking external libraries支持 C++11 的 Qt5.1 项目 - 链接外部库
【发布时间】:2013-06-22 14:48:19
【问题描述】:

我有一个 Qt5.1 项目,它也链接到外部库 - DCMTK。我看到很多来自这个外部库的链接错误:

Undefined symbols for architecture x86_64:
  "std::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::str() const", referenced from:
      DcmDicomDir::getDataset() in libdcmdata.a(dcdicdir.o)
      DcmDicomDir::getDirRecSeq(DcmDataset&) in libdcmdata.a(dcdicdir.o)
      ...

我正在使用 C++11 功能,所以我的 Qt project.pro 有这个:CONFIG += c++11。链接错误来自哪里? DCMKT 是否链接到不同的 C++ 库?我需要更改 DCMTK 库的编译标志吗?

【问题讨论】:

    标签: qt c++11 linker linker-errors


    【解决方案1】:

    原来是一项微不足道的任务 - 配置 DCMTK 以使用 clang 和 libc++:

    ./configure CXXFLAGS="-stdlib=libc++" 
                LDFLAGS="-stdlib=libc++" 
                CC=/usr/bin/clang 
                CXX=/usr/local/clang++
    

    【讨论】:

      【解决方案2】:

      是的,您必须重建 DMCTK。祝你好运,因为我发现这项任务几乎不可能完成。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-12-24
        • 2021-08-06
        • 1970-01-01
        • 2016-05-13
        • 2013-03-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多