質問
実行できないCコードがあります http://dl.getdropbox.com/u/175564/problem-sdl。 png
問題はOpenGLまたはSDLにあります。 /usr/local/SDL/SDL.hにSDL.hがないので、gccはそれを見つけることができません。
MacPortsによって/opt/local/include/SDL/SDL.hにSDL.hがインストールされています
フォルダの/Masi/local/SDL/SDL.hへのコピーに失敗しました
cp /opt/local/include/SDL/SDL.h /
および
cp /opt/local/include/SDL/SDL.h /Masi/local/SDL/
シンボリックリンクを作成して問題を解決しようとしました
$ln -s /opt/local/include/SDL/SDL.h /Masi/local/SDL/SDL.h
解決
いいえ、Ubuntuにはデフォルトではありません(少なくとも開発バージョン)。私自身の小さなプログラムでは、 libsdl1.2-dev と mesa-common-dev (OpenGL)をインストールしました。
ビルドプロセスには、次のコマンドを生成するsconsを使用します。
gcc -o src/geom.o -c -Wall -ansi src/geom.c
gcc -o src/main.o -c -Wall -ansi src/main.c
gcc -o test src/main.o src/geom.o -lSDL -lGL
ライブラリを非標準の場所にインストールする場合、独自のインクルード(-I)およびライブラリ(-L)パスを指定する必要がある場合があります。
他のヒント
SDLのすべてのコンパイラフラグを取得する最も簡単な方法は、 sdl-config
を使用することです。
gcc sdl_gl_1.c $(sdl-config --cflags --libs) -lGL -lGLU
所属していません StackOverflow