GNU/Linux >> Linux の 問題 >  >> Linux

コンパイル時に「SDL.h no such file or directory found」

ほとんどの場合、SDL は /usr/include/SDL にあります .もしそうなら、あなたの #include <SDL.h> ディレクティブが間違っています。#include <SDL/SDL.h> にする必要があります .

その代わりに /usr/include/SDL を追加します ディレクトリをインクルード ディレクトリに追加します。これを行うには、 -I/usr/include/SDL を追加する必要があります コンパイラフラグに...

IDE を使用している場合、これも非常に簡単です...


ヘッダファイルが /usr/include/sdl/SDL.h の場合 そしてあなたのコードは:

#include "SDL.h"

コードを修正する必要があります:

#include "sdl/SDL.h"

または、インクルード ファイルの場所をプリプロセッサに指示します。

CFLAGS = ... -I/usr/include/sdl ...

ヘッダファイルは

にあります
/usr/include/SDL/SDL.h

       __OR__

/usr/include/SDL2/SDL.h  #  for SDL2

C++ コードで、

を使用してこのヘッダーを取り込みます
#include <SDL.h>

       __OR__

#include <SDL2/SDL.h>    // for SDL2

を正しく使用しています
sdl-config --cflags --libs

       __OR__

sdl2-config --cflags --libs   #  sdl2

-I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT
-L/usr/lib/x86_64-linux-gnu -lSDL

       __OR__

-I/usr/include/SDL2 -D_REENTRANT
-lSDL2

場合によっては、標準インストールで機能するこの使用方法も表示される場合があります

pkg-config --cflags --libs sdl

       __OR__

pkg-config --cflags --libs sdl2   #  sdl2

-D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -lSDL

       __OR__

-D_REENTRANT -I/usr/include/SDL2 -lSDL2   #  SDL2

Simple Direct Media Layer 2 (SDL2) の場合、次の方法で Ubuntu 16.04 にインストールした後:

sudo apt-get install libsdl2-dev

ヘッダーを使用しました:

#include <SDL2/SDL.h>  

およびコンパイラ リンカー コマンド:

-lSDL2main -lSDL2 

さらに、インストールすることもできます:

apt-get install libsdl2-image-dev  
apt-get install libsdl2-mixer-dev  
apt-get install libsdl2-ttf-dev  

これらのヘッダーを使用:

#include <SDL2/SDL_image.h>
#include <SDL2/SDL_ttf.h>
#include <SDL2/SDL_mixer.h>  

およびコンパイラ リンカー コマンド:

-lSDL2_image 
-lSDL2_ttf 
-lSDL2_mixer

Linux
  1. エラー:xenstore-読み取り:xs_open:DomUにそのようなファイルまたはディレクトリはありません[解決済み]

  2. 致命的なエラーopenssl/evp.h:そのようなファイルまたはディレクトリはありません:[解決済み]

  3. 致命的なエラーopensslerr.hを修正–そのようなファイルまたはディレクトリはありません[OpenCA]

  1. $ pathにあるスクリプトの同じディレクトリの下にあるファイルを参照しますか?

  2. エラー:Tcl.hが見つかりません(そのようなファイルまたはディレクトリはありません)?

  3. Shopt:Not Found [そのようなファイルまたはディレクトリはありません]

  1. Alpine LinuxにPillowをインストールする場合、そのようなファイルまたはディレクトリlimits.hはありません

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

  3. conda source activate :bash:activate:No such file or directory