我试图在64位系统上使用MS Visual Studio 2012构建谷歌的V8 JavaScript引擎,但它总是输出错误
LINK : fatal error LNK1104: cannot open file 'ws2_32.lib'
我根据https://code.google.com/p/v8/wiki/BuildingWithGYP完成了所有事情。我使用python方式而不是cygwin来生成项目文件。
如何设置我的链接器找到ws2_32.lib
?
//编辑由于某些原因,GYP为vs2010而不是vs2012制作了项目文件,所以我不得不更新它们。现在它有效。 (很奇怪,我以前试过这个并且它没有工作)
答案 0 :(得分:2)
在我设法在Windows 7 64bit上构建和链接V8之前,我遇到了一些问题包括你的问题 - (我为32位构建)。
确保您已将“third_party”文件夹添加到V8结帐中,并在其中添加了来自文档中google uri的cygwin和python_26。 (greping V8文件为“third_party”表示精确的文件结构)。
现在运行gyp工具。 (与缺少third_party时的反馈完全相同,只需花费更长时间并实际工作,而不是生成垃圾解决方案文件)。
加载all.sln,它应该构建调试和发布。我正在使用vs2012和DIDNT从vs2010升级项目,这可能很重要。
最后,当涉及到v8_base.ia32.lib和v8_snapshot.lib(或64位版本)的链接时 - 我需要链接“Ws2_32.lib”和“winmm.lib”,因为V8 lib中存在未解析的外部。 / p>
出于某种原因,V8需要访问win32套接字api和多媒体计时器。很高兴有一个没有隐藏平台api包装器的精简选项。
答案 1 :(得分:1)
GYP创建了VS2010项目文件,所以我不得不将它们更新到VS2012。