winsock 的 v8 发布模式链接器错误
Posted
技术标签:
【中文标题】winsock 的 v8 发布模式链接器错误【英文标题】:v8 release mode linker error with winsock 【发布时间】:2011-06-01 08:25:56 【问题描述】:在我接受了我上一个问题的答案后,这个主题变成了一个副主题,所以我将它作为一个单独的主题放在这里,以保持整洁,我相信这会让它对其他人更有用。
我正在开发 MS Visual Studio 2005。
我在发布模式下使用 v8 构建项目,并且收到与 winsock 相关的链接器错误,即使 winsock 库已经在我的附加依赖项中。
对于发布模式和调试模式,我的附加依赖项列表是相同的。它在调试模式下完美运行,我只在发布模式下得到链接器错误。
这是我的附加依赖字符串:
Ws2_32.lib wininet.lib rasapi32.lib iphlpapi.lib Psapi.lib winmm.lib wsock32.lib msvcrt.lib $(SolutionDir)\external_libs\debug\v8.lib $(SolutionDir)external_libs\release\v8_base.lib $(SolutionDir)external_libs\release\v8_snapshot.lib
非常感谢任何可能的帮助。
更新:
我将依赖项减少到:
Ws2_32.lib Psapi.lib winmm.lib msvcrt.lib $(SolutionDir)\external_libs\release\v8.lib $(SolutionDir)external_libs\release\v8_base.lib
仍然得到未解决的外部问题:
1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol __imp__freeaddrinfo@4
1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol __imp__getaddrinfo@16
1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol __set_abort_behavior
【问题讨论】:
...错误信息会很好。考虑到如果你有ws2_32
,它就不会是Unresolved External
。
【参考方案1】:
您的依赖项列表中有调试和发布文件夹的路径。尝试用$(Configuration)
替换那些。
【讨论】:
我将依赖项减少到: Ws2_32.lib Psapi.lib winmm.lib msvcrt.lib $(SolutionDir)\external_libs\release\v8.lib $(SolutionDir)external_libs\release\v8_base.lib,并且仍然得到未解析的外部:1>v8_base.lib(platform-win32.obj):错误 LNK2001:未解析的外部符号 __imp__freeaddrinfo@4 1>v8_base.lib(platform-win32.obj):错误 LNK2001:未解析的外部符号 __imp__getaddrinfo@16 1>v8_base.lib(platform-win32.obj) : error LNK2001: unresolved external symbol __set_abort_behavior ...以上是关于winsock 的 v8 发布模式链接器错误的主要内容,如果未能解决你的问题,请参考以下文章