私はOpenGLを学ぶのに成功してSDLを使用していますが、GLUTを使用しているチュートリアルに従っており、初心者には使いやすいように見えます。コンテンツをより早く。私はこれは簡単で素早く簡単なプロセスだと思っていましたが、GLUTコンテンツをコンパイルしようとすると、次の問題に遭遇しています(MinGWを使用して) (私はGLUTをダウンロードし、 libフォルダにlibファイルを展開していますが、それに対してリンクしています。システムフォルダに.DLLがあり、正常に呼び出されています。GLUTを使用した未定義参照
私が間違ってやっていると、任意のヘルプや提案のために感謝される
ビルドメッセージ(現時点では何もしませんが、コンパイルする必要があります)コンテンツの以下の小片コンパイル:
を#include <stdlib.h>
#include <GL/glut.h>
static int day = 0, year = 0;
void init()
{
glClearColor(0.0,0.0,0.0,0.0);
glShadeModel(GL_FLAT);
}
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0);
glPushMatrix();
glutWireSphere(1.0,20,16);
glRotatef((GLfloat) year, 0.0,1.0,0.0);
glTranslatef(2.0,0.0,0.0);
glRotatef((GLfloat) day, 0.0, 1.0, 0.0);
glutWireSphere(0.2,10,8);
glPopMatrix();
glutSwapBuffers();
}
//void reshape(int w, int h)
int main(int argc, char **argv)
{
}
ビルダーエラー:
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `__glutInitWithExit'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `__glutCreateWindowWithExit'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `__glutCreateMenuWithExit'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glClearColor'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glShadeModel'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glClear'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glColor3f'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glPushMatrix'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `glutWireSphere'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glRotatef'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glTranslatef'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glRotatef'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `glutWireSphere'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `_imp__glPopMatrix'|
C:\Documents and Settings\User\Desktop\test.o:test.cpp|| undefined reference to `glutSwapBuffers'|
||=== Build finished: 15 errors, 0 warnings ===|
で.dllファイルにアクセスするためにWINDOWS.HでWindowsリンク上のリンカーと思われる、私は、httpからヘッダーおよびLIBSと.dllを得た://ユーザー.xml.com /〜nate/glut.htmlと私のCodeBlocks IDEは、以下をリンクするように設定されています:-lmingw32 -lSDLmain -lSDL -lSDL_ttf -lSDL_image -lglut32 -lopengl32 -lglu32 -lglut32win –
私の編集を参照してください。ところで、それがオプションであれば、* nixボックスでの開発を検討します。なぜならライブラリをインストールするのは簡単でパッケージマネージャーから起こるからです。 –
あなたの助けていただきありがとうございます。あなたの編集された答えは解決策を提供しました。私は.aが.libと同様にリンクされる可能性があると考えました。また、glut.hの前にwindows.hをインクルードする必要がありました。ありがとうございました! –