web-dev-qa-db-ja.com

致命的なエラー:SDL / SDL.h:そのようなファイルまたはディレクトリはありません

https://tutorialsplay.com/opengl/2014/04/23/textured-cube/ でlesson_1を練習しようとしています

Cube.cという名前のコードを実行すると、

cube.c:16:21: fatal error: SDL/SDL.h: No such file or directory
 #include <SDL/SDL.h>
                     ^

compilation terminated.

https://github.com/PluginIO/EX3/wiki/Setting-up-SDL2-in-Ubuntu-12.1 のガイダンスでSDL2をインストールしました

ただし、14.04を使用しています。

SDL2のインストールは成功し、エラーは発生しませんでした。

SDL.hファイルは「/ usr/local/include/SDL2」にあります

コマンドによるフルパスリンクの使用を強制しようとしました

gcc cube.c -lglut -lGL -lGLU -l/usr/local/include/SDL2

の代わりに

gcc cube.c -lglut -lGL -lGLU -lSDL

しかし、すべてが無駄でした...

このリンクの問題の解決策を知っている人はいますか?

ムルが指摘したように、私はcaptialに変更しました。「エラー:不明なタイプ名 'SDL_keysym'」という意味になりました。

私が発見した他の方法は

私が変更され

#include <SDL/SDL.h> 

#include <SDL2/SDL.h>

「致命的なエラー:SDL/SDL.h:そのようなファイルまたはディレクトリはありません」と表示されなくなりました。ただし、別のスレッドに投稿される次のエラーが表示されます。

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;
     ^

A.B .:提案されたコマンドの出力を以下に貼り付けました。

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....
7
Evan S

おそらくあなたはすでにライブラリをインストールしているでしょう、私はステップを示しますが、完全性の理由のために再び。

  • SDL2

    Sudo apt-get install libsdl2-dev
    
  • SDL1

    Sudo apt-get install libsdl1.2-dev
    

コンパイルを開始します:

  • SDL2

    gcc cube.c `pkg-config --cflags --libs sdl2`
    
  • SDL1

    gcc cube.c `pkg-config --cflags --libs sdl`
    

サンプル出力:

% 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
13
A.B.