| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Программирование игр, графики и искусственного интеллекта > Программа на openGL, не компилится, как побороть? |
| Автор: Artefact 28.2.2008, 23:04 | ||||
Паралелльно с С++ стал изучать OpenGL, купил книгу "OpenGL суперкнига", все понятно по началу. Но при попытки скомпилировать первый пример я получаю кучу ошибок:
Сам код примера SIMPLE здесь:
Автор книги предупреждал что все примеры написаны на Си, а не на С++. Но почему не находится хотя бы тот же самый OpenGL.h ? Glut-3.7 я поставил с прилагающегося диска. |
| Автор: vinter 28.2.2008, 23:53 |
| в зависимости от ОС должна быть подключен хидер этой ОС. Например для windows, подключи windows.h до подключения хидеров openGL |
| Автор: Artefact 29.2.2008, 00:02 |
| Я работаю в линуксе, точнее ubuntu. И какой тогда получается нужен хидер? |
| Автор: vinter 29.2.2008, 00:35 |
| судя по всему в linux должно быть все нормально и без лишних хидеров, а что у тебя за хидер #include <OpenGL.h> такой? |
| Автор: Artefact 29.2.2008, 00:48 |
| Это взято из примера книги, в точь в точь перепечатал. Он включает заголовки gl.h и glut.h, вводящие прототипы функций. Может нужно gl.h и glut.h поместить в одну папку, где у меня лежит код? |
| Автор: nickless 29.2.2008, 01:26 | ||||||
Может его просто нет?
?
У http://nehe.gamedev.net/ есть серия хороших уроков по OpenGL, с примерами (в том числе) под линукс. P.S. Выкинь книгу |
| Автор: Artefact 29.2.2008, 17:16 | ||
nickless, мне уже стыдно что создал тему.
gl.h нет. Но ничего, найду решение. |
| Автор: Rickert 4.3.2008, 05:25 |
| Artefact, значит у тебя элемнтарно не стоит библиотеки OGL'а |
| Автор: Brain 2.9.2008, 23:14 |
| Новую тему решил не создавать, так что пишу здесь... Скачал с http://nehe.gamedev.net/ basecode под линь. Попытался скомпилить в eclipse, не получилось(он не знал что такое XF86VidModeModeInfo), долго мучался прилось поставить sudo aptitude install libxxf86vm1 libxxf86vm-dev Но теперь он у меня не видит функцию XOpenDisplay; Люди подскажите что не так... PS: С помощью Makefile который в архиве все компилится нормально... |
| Автор: Rickert 3.9.2008, 03:24 |
| Ищи гуглом в англоязычной части инета. Ответы по части разработки под линуксом в 99% случаев только там. У наснарод не особо кодит под *n?x ОСями. Функция XOpenDisplay относится к библиотеке XLib. Ты её подключал? В makefile указывал либу для компиляции? |
| Автор: Brain 3.9.2008, 08:17 | ||
| Да, подключал. Но проблема еще тем непонятна, что CodeAssistant(автодописывание) видит эту функцию, а вот компилятор нет О_о. Makefile'ом пользоваться особо не умею, у меня проект manage makefile project, он сам разве не делает? В makefile из архива есть какаято непонятка:
Меня здесь напрягает строка $(CC) -O2 -g $(OBJECTS) -L/usr/X11R6/lib -lm -lGL -lXxf86vm -o $(PROJECT) У мну в /usr/X11R6/lib ниче нет кроме пустой папки nvidia и все. Хотя с этого makefile'а все компилится. |
| Автор: Rickert 3.9.2008, 10:01 |
| Brain, в этом всё и дело. Найди где у тебя лижат либы, вставь в перечисление необходимые и компиль. Вообще, в юникс, разработка под какими-либо визуальными компиляторами - дело тухлое. Фигни насуют в makefile и сам ничего понимать не будешь. "Вперёд! В рукопашную!" |
| Автор: Brain 3.9.2008, 11:17 |
| Rickert, в eclipse есть возможность проекта со своим makefile'ом, я думаю переписать проект под него... Получится - отпишусь... |