0

コンパイルする単純なopenGLDプログラムがありますが、libglut.aとリンクさせることができません。私はいくつかの異なるコマンドラインを試しました:

$ dmd life.d -lglut
$ dmd life.d -L-lglut
$ dmd life.d -L/usr/lib/libglut.a
$ dmd life.d /usr/lib/libglut.a

これらはすべて、次のエラーを出力します。

life.o:(.data+0x10): undefined reference to `_D1c2gl4glut12__ModuleInfoZ'
life.o:(.data+0x14): undefined reference to `_D1c2gl2gl12__ModuleInfoZ'
life.o: In function `_Dmain':
life.d:(.text._Dmain+0x72): undefined reference to `_D1c2gl4glut8glutInitT1c2gl4glut10pfglutInit'
life.d:(.text._Dmain+0x87): undefined reference to `_D1c2gl4glut19glutInitDisplayModeT1c2gl4glut21pfglutInitDisplayMode'
life.d:(.text._Dmain+0xa1): undefined reference to `_D1c2gl4glut18glutInitWindowSizeT1c2gl4glut20pfglutInitWindowSize'
life.d:(.text._Dmain+0xc2): undefined reference to `_D1c2gl4glut16glutCreateWindowT1c2gl4glut18pfglutCreateWindow'
life.d:(.text._Dmain+0xd7): undefined reference to `_D1c2gl4glut15glutDisplayFuncT1c2gl4glut17pfglutDisplayFunc'
life.d:(.text._Dmain+0xe6): undefined reference to `_D1c2gl4glut12glutMainLoopT1c2gl4glut14pfglutMainLoop'
collect2: ld returned 1 exit status
--- errorlevel 1

コマンドラインに問題がありますか、それとも他の問題ですか?

4

1 に答える 1

1

それらはDコードからの壊れたシンボルのように見えます。以前の質問で、ある種の互換性レイヤーを使用しているとおっしゃいましたが、ビルドにそのレイヤーのファイルまたはライブラリを含めるようにしましたか?

于 2010-12-26T00:16:16.817 に答える