问题描述
我正在尝试通过QMake和.pro文件将cpprestsdk与我的Qt Widgets应用程序链接。 我尝试在独立的演示应用程序中使用cpprestsdk,并在CMake文件中使用以下部分,效果很好:
find_package(Boost COMPONENTS filesystem system REQUIRED)
find_package(cpprestsdk REQUIRED)
target_link_libraries(demo PRIVATE cpprestsdk::cpprest ssh crypto ${Boost_SYSTEM_LIBRARY})
当尝试将其转换为QMake / .pro文件时,如下所示:
INCLUDEPATH += /usr/include/cpprest
INCLUDEPATH += /usr/include/boost
INCLUDEPATH += /usr/include/boost/filesystem
INCLUDEPATH += /usr/include/boost/system
LIBS += -lcrypto -lssl -lboost_system -lboost_filesystem -pthread -lboost_thread -lboost_chrono /usr/local/lib/libcpprest.so
项目编译正常,但在执行时会引发以下错误:
symbol lookup error: <path> undefined symbol: _ZN7utility7details9str_ilessERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_
C ++ Filt显示未定义的符号为以下功能
c++filt _ZN7utility7details9str_ilessERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_
utility::details::str_iless(std::__cxx11::basic_string<char,std::char_traits<char>,std::allocator<char> > const&,std::__cxx11::basic_string<char,std::allocator<char> > const&)
现在,ldd <application>
向我展示了libcpprest应该正确链接,并且看不到未链接的依赖项。
libcpprest.so.2.10 => /usr/local/lib/libcpprest.so.2.10
我在哪里错了?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)