【发布时间】:2018-05-22 22:49:51
【问题描述】:
我在 x64 本机工具命令提示符 Visual Studio 中使用此命令从源代码构建了 CURL 静态库
nmake /f Makefile.vc mode=static MACHINE=AMD64
我将 lib 文件夹添加到链接器库文件夹中,将 libcurl_a.lib 添加到链接器输入中,并将包含文件夹添加到其他包含目录中。我还使用了预处理器定义 CURL_STATICLIB。
库链接成功,找到了头文件。但是当我尝试编译时,我得到了 60 个未解析的外部符号。 https://hastebin.com/vukekakoti.tex
动态链接没有问题。
我该如何解决这个问题?
【问题讨论】:
-
我遵循了构建和链接 curl 的所有说明。请解释为什么我被否决。谢谢。
-
查看未定义的符号,找出它们属于哪些库,然后将这些库添加到链接器输入中。
-
WSA 看起来像 windows socket api,但我仍然对如何制作 DLL 并且它运行完美感到困惑,但使用 lib 无法编译。
-
我已经删除了一些缺少的外部定义。现在我只剩下两个了。我会发布一个列表。仍然好奇为什么我的东西与 DLL 一起运行,以及如果缺少这些外部定义,为什么 DLL 甚至可以编译。
-
“我怎样才能使 DLL 完美运行” curl dll 已经链接到所有其他必要的 dll,但是静态库不能引用其他库,它们不能以这种方式工作。
标签: c++ visual-studio curl visual-studio-2017