Проблема с OpenGL/SDL в Ubuntu

У меня есть C-код, который мне не удалось запустить http://dl.getdropbox.com/u/175564/problem-sdl.png

Проблема в OpenGL или SDL. У меня нет SDL.h в /usr/local/SDL/SDL.h, поэтому gcc не может его найти.

У меня есть SDL.h, установленный MacPorts в /opt/local/include/SDL/SDL.h.

Я безуспешно пытался скопировать его в /Masi/local/SDL/SDL.h в папку

cp /opt/local/include/SDL/SDL.h /

и по

cp /opt/local/include/SDL/SDL.h /Masi/local/SDL/

Я попытался решить проблему, создав символическую ссылку

$ln -s /opt/local/include/SDL/SDL.h /Masi/local/SDL/SDL.h

person Léo Léopold Hertz 준영    schedule 07.03.2009    source источник


Ответы (2)


Нет, в Ubuntu их нет по умолчанию (по крайней мере, в разрабатываемых версиях). Для моей собственной небольшой программы я только что установил libsdl1.2-dev и mesa-common-dev (OpenGL).

Для процесса сборки я использую scons, который выдает следующие команды:

gcc -o src/geom.o -c -Wall -ansi src/geom.c
gcc -o src/main.o -c -Wall -ansi src/main.c
gcc -o test src/main.o src/geom.o -lSDL -lGL

Если вы устанавливаете библиотеки в какое-то нестандартное место, вам, возможно, придется указать свои собственные пути включения (-I) и библиотеки (-L).

person user61405    schedule 07.03.2009
comment
Спасибо за порцию информации! Они были у меня в Ubuntu. Проблема видимо в другом. - person Léo Léopold Hertz 준영; 07.03.2009
comment
Проблема, очевидно, в том, что gcc не может найти SDL.h. Он у вас есть в /usr/local/SDL/SDL.h? Вы включаете его так: #include ‹SDL/SDL.h›? - person user61405; 07.03.2009

Самый простой способ получить все флаги компилятора для SDL — использовать sdl-config:

gcc sdl_gl_1.c $(sdl-config --cflags --libs) -lGL -lGLU
person d0k    schedule 07.03.2009
comment
Я получаю следующую ошибку: $gcc sdl_gl_1.c $(sdl-config --cflags --libs) -lGL -lGLU ld: библиотека не найдена для -lGL collect2: ld вернул 1 статус выхода - person Léo Léopold Hertz 준영; 07.03.2009
comment
libGL — это библиотека OpenGL. Обычно он устанавливается вместе с драйверами видеокарты. - person d0k; 07.03.2009