
Estoy intentando practicar la lección_1 en https://tutorialsplay.com/opengl/2014/04/23/texured-cube/
Cuando ejecuto el código llamado cube.c obtuve
cube.c:16:21: fatal error: SDL/SDL.h: No such file or directory
#include <SDL/SDL.h>
^
compilation terminated.
He instalado SDL2 con orientación en https://github.com/PluginIO/EX3/wiki/Setting-up-SDL2-in-Ubuntu-12.10
Aunque estoy usando 14.04.
La instalación de SDL2 fue exitosa. No recibí ningún error.
El archivo SDL.h se encuentra en "/usr/local/include/SDL2"
Intenté forzar el uso del enlace de ruta completa mediante comando
gcc cube.c -lglut -lGL -lGLU -l/usr/local/include/SDL2
en lugar de
gcc cube.c -lglut -lGL -lGLU -lSDL
Pero todo fue en vano...
¿Alguien conoce la solución para este problema de vinculación?
Como señaló muru, cambié a capital y obtuve "error: nombre de tipo desconocido 'SDL_keysym'", que significa que funcionó.
Otra forma que descubrí fue
Cambié
#include <SDL/SDL.h>
a
#include <SDL2/SDL.h>
Ya no muestra "error fatal: SDL/SDL.h: No existe tal archivo o directorio". Por lo tanto, por ahora considérelo resuelto. Sin embargo, recibo los siguientes errores que se publicarán en un hilo separado.
cube.c:105:22: error: unknown type name ‘SDL_keysym’
void handleKeyPress( SDL_keysym *keysym )
^
cube.c: In function ‘main’:
cube.c:239:5: error: unknown type name ‘SDL_VideoInfo’
const SDL_VideoInfo *videoInfo;
^
AB: Pegué el resultado de los comandos sugeridos a continuación.
gcc cube.c `pkg-config --cflags --libs sdl`
Package sdl was not found in the pkg-config search path.
Perhaps you should add the directory containing `sdl.pc'
to the PKG_CONFIG_PATH environment variable
No package 'sdl' found
gcc cube.c `pkg-config --cflags --libs sdl2`
cube.c:105:22: error: unknown type name ‘SDL_keysym’
void handleKeyPress( SDL_keysym *keysym )
^
cube.c: In function ‘main’:
cube.c:239:5: error: unknown type name ‘SDL_VideoInfo’
const SDL_VideoInfo *videoInfo;
^
errors continue....
Respuesta1
Probablemente ya hayas instalado las bibliotecas, muestro los pasos pero nuevamente por razones de integridad.
SDL2
sudo apt-get install libsdl2-dev
SDL1
sudo apt-get install libsdl1.2-dev
Comience la compilación con:
SDL2
gcc cube.c `pkg-config --cflags --libs sdl2`
SDL1
gcc cube.c `pkg-config --cflags --libs sdl`
Salida de muestra:
% pkg-config --cflags --libs sdl
-D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -lSDL
% pkg-config --cflags --libs sdl2
-D_REENTRANT -I/usr/include/SDL2 -lSDL2