2012-01-04 47 views
1

私はOpenGl superbibleを読んでいます。最初の三角形プログラムでは実行されません。 プログラムはうまくコンパイルされますが、実行すると、あなたのコンピュータからfreeglut.dllが見つからないというエラーメッセージが表示されました。私はそれをダウンロードして正しいディレクトリに入れ、MSVCR71.dllが見つからなかったので、ダウンロードして正しいディレクトリに入れて、「プロシージャエントリポイント__glutCreateWindowWithExitをダイナミックに配置できませんでしたリンクライブラリfreeglut.dll。 "誰かが私が間違っていることを知っていますか?私は本が私に言ったすべての指示に従った。freeglut.dllがありません

+2

そのようなDLL。 'freeglut.dll'の場合は、使用した対応する' .lib'ファイルと正確に一致するバージョンが必要です。 'mscvr71.dll'の場合は、ランタイム全体が一致するバージョンセットである必要があり、正しくインストールする必要があります。 –

+0

'triangle'は有用なタグですか? –

+0

@LightnessRacesinOrbit:いいえ、取り除きました(税金) – datenwolf

答えて

6

インターウェブチューブからランダムDLLを取得してPCにダンプすることはできません。あなたが完全にバイパスしていると考えるバージョン管理の問題があります。 MSVCランタイム依存関係がリンクされていないときのヒントであったはずです。

freeGLUTパッケージを適切にインストールしてください。

-1

ライブラリをリンクできるコンパイラのオプションはありませんか?たとえば、DevC++を使用する場合は、Project - > Project Options - > Parametersの順に進み、Linkersを設定します。

4

私は同じ問題がありました。次の手順に従います。

本書に記載されているすべての手順を実行したとします。

  1. コンパニオンサイトからソースコードをダウンロードしてください。フォルダはSB5とその92 MBだと思います。
  2. 次に、 'freeglut.vcproj'という名前のプロジェクトをビルドします。
  3. 他のファイルとは別にfreeglut.dllを生成します。freeglut.dllをc:\ windows \ syswow64フォルダに入れて、すべて完了します。
0

このMSVCを実行している場合は、実行可能な場所にdllを含めることができます。たとえば、dllをDebugフォルダ内に置くことができます。フォルダをクリーニングすると、そのDLL以外のすべてが削除されるので、常に再コピーすることを心配する必要はありません。さらに、Windows/System32フォルダ内にdllを置くことも、64ビットアーキテクチャの場合はSystem/SysWow64フォルダ内に置くこともできます。

関連する問題