2

私は現在、openglbook.com のチュートリアル (セットアップ) (チュートリアル) に従っていますが、かなり早い段階で問題に遭遇しました。次の 2 つのエラーが発生します。

1>main.obj : error LNK2019: unresolved external symbol __imp__glewGetErrorString@4 referenced in function _Initialize
1>main.obj : error LNK2019: unresolved external symbol __imp__glewInit@0 referenced in function _Initialize

freeglut 2.8.0 と glew 1.9.0 バイナリをダウンロードしてコンパイルしました。ライブラリとインクルードをそれぞれ C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Lib とインクルードにコピーしました。Lib パスとインクルード パスも、Additional Library/Include ディレクトリの下のプロジェクト プロパティに追加されました。

また、リンカー - >入力 - >追加の依存関係で glew32.lib と freeglut.lib を定義しました。

メイン ファイルの先頭に GL/glew.h と GL/freeglut.h を含めました。

私は何が欠けていますか?私が見つけた他のすべてのスレッドは、プロジェクトのプロパティにディレクトリを追加することで解決されました。誰にもアイデアはありますか?

4

1 に答える 1

5

これは、GLEW を DLL として使用しようとしている (アプリケーションが "import" のように __imp で始まる名前を探しているため) が、GLEW を DLL としてビルドしていないことを意味します (それ以外の場合は機能するため)。

3 つの可能なオプション:

  • プリプロセッサ定義を使用して GLEW を再ビルドしGLEW_BUILDます ([プロジェクト] -> [プロパティ] -> [C++] -> [プリプロセッサ] -> [追加の定義])。次に、アプリケーションを再構築します。
  • GLEW をまったくビルドしないでください。glew.c をアプリケーションのプロジェクトに入れるだけです。これが最も簡単な方法です。
  • (私のお気に入り)GLEW_STATICアプリケーションのプリプロセッサ定義で定義し、再構築します。
于 2012-09-27T07:43:12.723 に答える