2

64 ビット システムで MS Visual Studio 2012 を使用して Google の V8 JavaScript エンジンをビルドしようとしていますが、常にエラーが出力されます。

 LINK : fatal error LNK1104: cannot open file 'ws2_32.lib'

https://code.google.com/p/v8/wiki/BuildingWithGYPに従ってすべてを実行しました。プロジェクトファイルを生成するために、cygwin の代わりに python の方法を使用しました。

を検出するようにリンカーを設定するにはどうすればよいws2_32.libですか?

//EDIT何らかの理由で、GYP は vs2012 ではなく vs2010 用のプロジェクト ファイルを作成したため、それらを更新する必要がありました。今では動作します。(奇妙なことに、私はこれを以前に試しましたが、うまくいきませんでした)

4

2 に答える 2

2

Windows 7 64ビットでV8をビルドしてリンクする前に、あなたのものを含むいくつかの問題に遭遇しました-(私は32ビット用にビルドしました)。

  1. V8チェックアウトに「hird_party」フォルダーを追加し、その中にドキュメントのgoogle uriからcygwinとpython_26を追加したことを確認してください。(「hird_party」の V8 ファイルを grep すると、正確なファイル構造が示されます)。

  2. gyp ツールを実行します。( third_party が見つからない場合とまったく同じフィードバックは、少し時間がかかり、ジャンク ソリューション ファイルを生成する代わりに実際に機能します)。

  3. all.sln をロードすると、すべてがデバッグとリリースをビルドするはずです。私はvs2012を使用しており、DIDNTはプロジェクトをvs2010からアップグレードします。これは問題になる可能性があります。

最後に、v8_base.ia32.lib および v8_snapshot.lib (または 64 ビット バージョン) とのリンクに関しては、V8 ライブラリの外部が未解決であるため、「Ws2_32.lib」と「winmm.lib」をリンクする必要がありました。

何らかの理由で、V8 は win32 ソケット API とマルチメディア タイマーへのアクセスを必要とします。非表示のプラットフォーム API ラッパーを使用しない、簡素化されたオプションがあると便利です。

于 2013-08-28T18:22:08.383 に答える
1

GYP が VS2010 のプロジェクト ファイルを作成したので、それらを VS2012 に更新する必要がありました。

于 2013-03-14T20:53:17.010 に答える