私はopenGLプログラミングを始めたいだけなので、ubuntuのリポジトリからfreeglut3をインストールし、すべてのmesaパッケージとbuild-essentialsをインストールしました。
後で、openGL wiki
の簡単な例を 1 つコピー
しましたgcc triangle.c -o triangle.o
。
しかし、後で、私はここを読みました:リンカーエラー:ライブラリを-lでリンクする必要があるシンボル 'glOrtho'への未定義の参照。
だから、私はgcc triangle.c -lglut -lGL -Wall -o triangle.o
どちらも同じエラーを返します:
/tmp/ccKLT4ac.o: In function `main':
triangle.c:(.text+0x2b): undefined reference to `glutInit'
triangle.c:(.text+0x37): undefined reference to `glutInitDisplayMode'
triangle.c:(.text+0x4b): undefined reference to `glutInitWindowSize'
triangle.c:(.text+0x57): undefined reference to `glutCreateWindow'
triangle.c:(.text+0x5c): undefined reference to `glewInit'
triangle.c:(.text+0x73): undefined reference to `glewGetErrorString'
triangle.c:(.text+0xaa): undefined reference to `glutDisplayFunc'
triangle.c:(.text+0xaf): undefined reference to `glutMainLoop'
collect2: error: ld returned 1 exit status
私は gl.h と glu.h ライブラリをインクルードしようとしました。cpp でさまざまなサンプル プログラムを試してみました...そして多くの組み合わせを試してみました。すべてが同様のエラーを返します。
ああ、/usr/include にはすべてのライブラリがあります。
akronix@ASJ-Netbook:~$ ls /usr/include/GL
freeglut_ext.h glext.h glu_mangle.h glx.h glxproto.h
freeglut.h gl.h glut.h glxint.h glxtokens.h
freeglut_std.h gl_mangle.h glxew.h glx_mangle.h internal
glew.h glu.h glxext.h glxmd.h wglew.h