【发布时间】:2021-04-08 15:34:25
【问题描述】:
作为初学者,想在visual studio中使用oat++作为第三方库,但是遇到了一些配置问题。
首先我下载了oat++项目的源文件,在visual studio和cmake和install打开。
然后我在visual studio新建了一个项目,开始运行官网的first example。
首先需要配置预处理,我先配置Include目录。 我所做的是:(我的项目名称是web4)
-
Project->Web4 properties->configuration properties->VC++ Directories - 设置
Include Directories包括C:\Users\13925\Documents\cpp\oatpp\out\install\x64-Debug\include\oatpp-1.2.5\oatpp
那太好了。编译器可以找到#include "file"
之后我遇到了麻烦,尝试编译时出错。
Error LNK2019 unresolved external symbol __imp_WSAStartup referenced in function....
通过查找资料,发现这个问题的原因是没有包含相关库。 但是我尝试了在线的方法,并没有解决问题,所以在这里寻求帮助。
网上的做法是这样的:
-
Project->Web4 properties->configuration properties->VC++ Directories - 设置
Library Directories包括C:\Users\13925\Documents\cpp\oatpp\out\install\x64-Debug\lib\oatpp-1.2.5
在C:\Users\13925\Documents\cpp\oatpp\out\install\x64-Debug\lib\oatpp-1.2.5中有三个文件:oatpp.lib、oatpp-test.lib和一个.hfiles。
-
Project->Web4 properties->configuration properties->Linker->Input - 设置
Additional Dependencies包括oatpp.lib和oatpp-test.lib
完成以上四步后编译,发现问题依旧没有解决。
问题仍然是unresolved external symbol。
如果您愿意提供帮助,我将不胜感激。
【问题讨论】:
-
WSAStartup要求您还添加库Ws2_32.lib参见备注 docs.microsoft.com/en-us/windows/win32/api/winsock/… -
也许试试 x32 配置?这多次解决了我的问题。
-
尝试使用 vcpkg 自动安装
标签: c++ visual-studio-2019 oat++