2

sourceforge から他の誰か (4 歳) のコードを実行しようとしています。cygwin をダウンロードし、CVS でプロジェクトをチェックアウトしました。

失敗しているコンパイル行は次のとおりです。

gcc ../block_display/block_display.c -o block_display -lopengl32 -lglut32 -lm

block_display.cの関連する include ステートメントは次のとおりです。

#include <GL/glut.h>

上記のコンパイル行を実行しようとすると、次のコンパイル エラーが発生します。

$ gcc ../block_display/block_display.c -o block_display -lopengl32 -lglut32 -lm
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: cannot find -lglut32
collect2: ld returned 1 exit status

私はcygwinに慣れていない/さびていることを認めます。この時点に到達するためにいくつかのことを試みましたが、ファイルをどこに置くべきか完全にはわからないため、このエラーで立ち往生しています。これが私が試したことです:

  1. cygwin セットアップで「glut」のすべての結果をダウンロード: libglut-devel、freeglut、libglut3
  2. glut 3.7.6をダウンロードし、glut32.dll を C:\Windows\SysWOW64 にコピーし、glut.h を C:\cygwin\usr\include にコピーします。私はまだ glut.def と glut32.lib を持っていますが、それらをどこに配置すればよいか正確にはわかりません。このインストール ガイドに従ってみましたが、VC++ を実行していないため、VC++ パスに相当する cygwin が何かわかりません。

このコードを正常にコンパイルするために何ができるか考えていますか? Windows 7 64 ビットを実行しています。

4

1 に答える 1

1

代わりにfreeglutを使用してください。元の過剰摂取は時代遅れです。一方、Freeglut は元の glut とバイナリおよびソース互換性があり、オープン ソースでもあります。

glut32.dll は Windows DLL であり、cygwin は Windows 上の UNIX 環境をエミュレートするためのものであるため、ソースから再コンパイルしないと元の glut を cygwin で簡単に使用することはできません。

于 2012-06-11T04:26:34.700 に答える