我使用的cpprest与4.2.1基于QT5.8.0 (MSVC 2015,32位)。
我已经修改了.pro文件以指示
INCLUDEPATH += C:/cpprest/Release/include
我得到了以下错误:
-1:错误: LNK2019:未解析的外部符号"__declspec(dllimport)类std::basic_string,类std::allocator > __cdecl utility::conversions::to_string_t(类std::basic_string,类std::allocator > const &)“函数中引用的(__imp_?to_string_t@conversions@utility@@YA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@4@@Z)”类web::uri __cdecl generateOMDBQuery(类std::basic_string,类std::allocator > const &)“(?generateOMDBQuery@@YA?AVuri@web@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
根据this的答案,我需要设置
wchar_t是在C/C++ ->语言中内置 to No的。
直到我明白这是视觉工作室的背景。如何在QT创建者中设置它?
发布于 2017-03-27 22:06:04
我同意与命令行构建一起使用的"AlexanderVX“注释。
这是为了解决您的问题,我的意思是设置选项--“在C/C++ ->语言中将内置类型处理为No。”
这个设置我不确定"QtCreator“。
但是,如果您使用命令行构建,则可以在QMake中设置它。
用于windows (MSDN文档):
/Zc:wchar_t用于将"WChar_t视为内置类型“。
/Zc:wchar_t-用于而不是,将"WChar_t作为内置类型“处理。
这些设置可以在windows操作系统的相应QMake文件中完成。
您可以在“mkspecs\ find 32- may 2010”中找到该文件(版本号可能有所不同)。
对于Qt4.8,我看到他们在,
Qt_4.8.0\4.8.0_original\mkspecs\win32-msvc2010 在便笺簿中打开make文件,查找"QMAKE_CFLAGS",并添加"-Zc:wchar_t-“选项,如下所示。警惕负向符号
QMAKE_CFLAGS = -nologo -Zm200 -Zc:wchar_t-https://stackoverflow.com/questions/43053658
复制相似问题