c++ - 在 visual studio 中使用 libuv 编译简单的 c++ 项目

标签 c++ visual-c++ libuv

我刚刚熟悉了 libuv,我尝试在 visual studio 中创建非常简单的项目并编译它。 我像文档中写的那样构建了 libuv 项目。 构建完成后,我在链接器中添加了来自 libuv 文件的包含文件。比我添加编译的库 - libuv.lib。

为了编译的目的,我写了非常小的问题:

#pragma comment (lib, "ws2_32.lib")
#pragma comment(lib, "psapi.lib")
#pragma comment(lib, "Iphlpapi.lib")

#include "stdafx.h"
#include <uv.h>

uv_loop_t *loop;

int main() {

   loop = uv_default_loop();

   return 0;
}      

问题是总是出现以下错误:

LNK2019 unresolved external symbol __imp__GetUserProfileDirectoryW@12 referenced in function _uv__getpwuid_r    LibuvThirdTest  D:\LibuvTest\LibuvTest\libuv.lib(util.obj)

谢谢。

最佳答案

这些是我们在 Windows 上链接的所有库,您可能需要为所有这些库添加编译指示:advapi32、iphlpapi、psapi、shell32、user32、userenv、ws2_32。

(列表取自uv.gyp)

关于c++ - 在 visual studio 中使用 libuv 编译简单的 c++ 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39048999/

相关文章:

c++ - 将字符串打印到屏幕上后更改 C++ 中的字符串

c++ - 将 char 数组分配给单个 char 的奇怪行为

c++ - 为什么我的赋值运算符不能用于自赋值?

visual-studio - 为什么禁用在 Visual Studio 中不起作用的特定警告

c++ - 我可以在 Windows 98 上运行在 Visual Studio 2005 中编译的应用程序吗?

c++ - 在 VS (2010) 中使用标准 'main' 条目构建和运行 C++ 控制台应用程序

.net - libuv 与 asp.net core 2.1 中的套接字

c++ - libuv - 自由写入缓冲区

c++ - 如何将 llvm::outs() 重定向到文件?

libuv - libuv 只是 POSIX 系统上 libev 的包装器吗?