1

V8 で動的に完全に動作するプロジェクトがありますが、それを静的に埋め込みたいと考えています。V8 を静的として正常にコンパイルできますが、結果のライブラリを C++ プロジェクトに含めると (これも静的リンクに変更しました)、次のようなエラーが発生します。

Error   12  error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall v8::HandleScope::HandleScope(class v8::Isolate *)" (__imp_??0HandleScope@v8@@QAE@PAVIsolate@1@@Z)

他にもたくさんのエラーがあります。v8.lib について言及している投稿を見たことがありますが、存在しません。ただし、v8.obj ファイルがあります。

どんな洞察も大歓迎です、ありがとう。

4

1 に答える 1

2

問題が見つかりました。実際には、v8.h ファイルの先頭に明確に記載されています。

// Setup for Windows DLL export/import. When building the V8 DLL the
// BUILDING_V8_SHARED needs to be defined. When building a program which uses
// the V8 DLL USING_V8_SHARED needs to be defined. When either building the V8
// static library or building a program which uses the V8 static library neither
// BUILDING_V8_SHARED nor USING_V8_SHARED should be defined.

「USING_V8_SHARED」がまだ定義されていました。正しい方向に向けてくれた@drescherjmに感謝します。;)

于 2015-02-03T19:09:15.933 に答える