g++ 3.cpp
/tmp/ccBtatJg.o: In function `display()':
3.cpp:(.text+0x1d): undefined reference to `glColor3f'
3.cpp:(.text+0x27): undefined reference to `glBegin'
3.cpp:(.text+0x3f): undefined reference to `glVertex3f'
3.cpp:(.text+0x57): undefined reference to `glVertex3f'
3.cpp:(.text+0x6f): undefined reference to `glVertex3f'
3.cpp:(.text+0x87): undefined reference to `glVertex3f'
3.cpp:(.text+0x8c): undefined reference to `glEnd'
3.cpp:(.text+0x91): undefined reference to `glFlush'
/tmp/ccBtatJg.o: In function `init()':
3.cpp:(.text+0xad): undefined reference to `glClearColor'
3.cpp:(.text+0xb7): undefined reference to `glMatrixMode'
3.cpp:(.text+0xbc): undefined reference to `glLoadIdentity'
3.cpp:(.text+0xf4): undefined reference to `glOrtho'
/tmp/ccBtatJg.o: In function `main':
3.cpp:(.text+0x112): undefined reference to `glutInit'
3.cpp:(.text+0x11c): undefined reference to `glutInitDisplayMode'
3.cpp:(.text+0x12b): undefined reference to `glutInitWindowSize'
3.cpp:(.text+0x13a): undefined reference to `glutInitWindowPosition'
3.cpp:(.text+0x144): undefined reference to `glutCreateWindow'
3.cpp:(.text+0x153): undefined reference to `glutDisplayFunc'
3.cpp:(.text+0x158): undefined reference to `glutMainLoop'
collect2: выполнение ld завершилось с кодом возврата 1
вывод кампилятора
---- Задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно все ----
g++ -lGL -lGLU 3.cpp
/tmp/ccKIw3yp.o: In function `main':
3.cpp:(.text+0x112): undefined reference to `glutInit'
3.cpp:(.text+0x11c): undefined reference to `glutInitDisplayMode'
3.cpp:(.text+0x12b): undefined reference to `glutInitWindowSize'
3.cpp:(.text+0x13a): undefined reference to `glutInitWindowPosition'
3.cpp:(.text+0x144): undefined reference to `glutCreateWindow'
3.cpp:(.text+0x153): undefined reference to `glutDisplayFunc'
3.cpp:(.text+0x158): undefined reference to `glutMainLoop'
collect2: выполнение ld завершилось с кодом возврата 1
с чего бы это?
---- Задница есть универсальный интерфейс. Ибо через задницу можно сделать абсолютно все ----
[vova@gfl-1158 GL]$ g++ -lGL -lGLU -lgnut gl1.cpp
gl1.cpp:1:21: error: GL/glut.h: Нет такого файла или каталога
gl1.cpp: In function ‘void MyDisplay()’:
gl1.cpp:11: ошибка: нет декларации ‘glutSwapBuffers’ в этой области видимости
gl1.cpp: In function ‘int main(int, char**)’:
gl1.cpp:15: ошибка: нет декларации ‘glutInit’ в этой области видимости
gl1.cpp:16: ошибка: нет декларации ‘glutInitWindowSize’ в этой области видимости
gl1.cpp:17: ошибка: нет декларации ‘glutInitWindowPosition’ в этой области видимости
gl1.cpp:19: ошибка: нет декларации ‘glutCreateWindow’ в этой области видимости
gl1.cpp:21: ошибка: нет декларации ‘GLUT_RGBA’ в этой области видимости
gl1.cpp:21: ошибка: нет декларации ‘GLUT_DOUBLE’ в этой области видимости
gl1.cpp:21: ошибка: нет декларации ‘GLUT_DEPTH’ в этой области видимости
gl1.cpp:21: ошибка: нет декларации ‘glutInitDisplayMode’ в этой области видимости
gl1.cpp:23: ошибка: нет декларации ‘glutDisplayFunc’ в этой области видимости
gl1.cpp:24: ошибка: нет декларации ‘glutIdleFunc’ в этой области видимости
gl1.cpp:26: ошибка: нет декларации ‘glutMainLoop’ в этой области видимости
[vova@gfl-1158 GL]$ g++ -lGL -lGLU -lglut gl1.cpp
/home/vova/tmp/cceRjz4q.o: In function `main':
gl1.cpp:(.text+0x1f): undefined reference to `glutInit'
gl1.cpp:(.text+0x34): undefined reference to `glutInitWindowSize'
gl1.cpp:(.text+0x43): undefined reference to `glutInitWindowPosition'
gl1.cpp:(.text+0x53): undefined reference to `glutCreateWindow'
gl1.cpp:(.text+0x60): undefined reference to `glutInitDisplayMode'
gl1.cpp:(.text+0x70): undefined reference to `glutDisplayFunc'
gl1.cpp:(.text+0x80): undefined reference to `glutIdleFunc'
gl1.cpp:(.text+0x88): undefined reference to `glutMainLoop'
/home/vova/tmp/cceRjz4q.o: In function `MyDisplay()':
gl1.cpp:(.text+0xa1): undefined reference to `glutSwapBuffers'
collect2: выполнение ld завершилось с кодом возврата 1
[vova@gfl-1158 GL]$
[vova@gfl-1158 GL]$ g++ -lGL -lGLU -lglut gl1.cpp
/home/vova/tmp/cceRjz4q.o: In function `main':
gl1.cpp:(.text+0x1f): undefined reference to `glutInit'
gl1.cpp:(.text+0x34): undefined reference to `glutInitWindowSize'
gl1.cpp:(.text+0x43): undefined reference to `glutInitWindowPosition'
gl1.cpp:(.text+0x53): undefined reference to `glutCreateWindow'
gl1.cpp:(.text+0x60): undefined reference to `glutInitDisplayMode'
gl1.cpp:(.text+0x70): undefined reference to `glutDisplayFunc'
gl1.cpp:(.text+0x80): undefined reference to `glutIdleFunc'
gl1.cpp:(.text+0x88): undefined reference to `glutMainLoop'
/home/vova/tmp/cceRjz4q.o: In function `MyDisplay()':
gl1.cpp:(.text+0xa1): undefined reference to `glutSwapBuffers'
collect2: выполнение ld завершилось с кодом возврата 1
[vova@gfl-1158 GL]$
что-то оно одинаково, что с -lGL -lGLU, что без. Наверное по кривому OpenGL в Алте4 собран.
[vova@main test]$ g++ -lglut gl1-test.cpp
/tmp/.private/vova/cc2MQCnQ.o: In function `display()':
gl1-test.cpp:(.text+0x1c): undefined reference to `glColor3f'
gl1-test.cpp:(.text+0x29): undefined reference to `glBegin'
gl1-test.cpp:(.text+0x46): undefined reference to `glVertex3f'
gl1-test.cpp:(.text+0x63): undefined reference to `glVertex3f'
gl1-test.cpp:(.text+0x80): undefined reference to `glVertex3f'
gl1-test.cpp:(.text+0x9d): undefined reference to `glVertex3f'
gl1-test.cpp:(.text+0xa5): undefined reference to `glEnd'
gl1-test.cpp:(.text+0xaa): undefined reference to `glFlush'
/tmp/.private/vova/cc2MQCnQ.o: In function `init()':
gl1-test.cpp:(.text+0xcf): undefined reference to `glClearColor'
gl1-test.cpp:(.text+0xdf): undefined reference to `glMatrixMode'
gl1-test.cpp:(.text+0xe7): undefined reference to `glLoadIdentity'
gl1-test.cpp:(.text+0x134): undefined reference to `glOrtho'
/tmp/.private/vova/cc2MQCnQ.o: In function `main':
gl1-test.cpp:(.text+0x157): undefined reference to `glutInit'
gl1-test.cpp:(.text+0x164): undefined reference to `glutInitDisplayMode'
gl1-test.cpp:(.text+0x179): undefined reference to `glutInitWindowSize'
gl1-test.cpp:(.text+0x188): undefined reference to `glutInitWindowPosition'
gl1-test.cpp:(.text+0x198): undefined reference to `glutCreateWindow'
gl1-test.cpp:(.text+0x1ad): undefined reference to `glutDisplayFunc'
gl1-test.cpp:(.text+0x1b5): undefined reference to `glutMainLoop'
collect2: выполнение ld завершилось с кодом возврата 1
Ничего подобного что просто так собирается. libglut она именно так и называется и она должна присутствовать именно как libglut.so/libglut.a
Ставьте официальную, читайте о ней на opengl.org:
Вот ещё вариант: у меня в системе есть пакеты
[root@d-espb04-126-197 cy6ergn0m]# urpmi glut
Нет пакета с именем glut
Следующие пакеты содержат glut:
libmesaglut3
libmesaglut3-devel
I want to Believe!
They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/