1. 程式人生 > 其它 >解決SDL/SDL.h: No such file or directory的方法

解決SDL/SDL.h: No such file or directory的方法

技術標籤:# 編解碼

解決SDL/SDL.h: No such file or directory的方法

一、先安裝一些依賴包

先簡單再介紹一下SDL:SDL是Simple DirectMedia Layer(簡易直控媒體層)的縮寫。它是一個跨平臺的多媒體庫,以用於直接控制底層的多媒體硬體的介面。主要用在開發遊戲上!

Ubuntu的新得立已經包含SDL庫,所以通過幾個簡單的命令就可以安裝,比windows還傻瓜!

sudo apt-get install libsdl1.2-dev(比較大,10M左右)

附加包:

sudo apt-get install libsdl-image1.2-dev

sudo apt-get install libsdl-mixer1.2-dev

sudo apt-get install libsdl-ttf2.0-dev

sudo apt-get install libsdl-gfx1.2-dev

安裝完成之後,在目錄/usr/include中,就會有個SDL資料夾,裡面包含了所需要的標頭檔案。

編譯的時候出現

[email protected]:~/tmp$ gcc frmer.c -o ubu

/tmp/ccLjLRXP.o:在函式‘DrawScreen’中:
frmer.c:(.text+0x34):對‘SDL_Flip’未定義的引用
/tmp/ccLjLRXP.o:在函式‘main’中:

frmer.c:(.text+0x9f):對‘SDL_Init’未定義的引用
frmer.c:(.text+0xd0):對‘SDL_SetVideoMode’未定義的引用
frmer.c:(.text+0xe0):對‘SDL_Quit’未定義的引用
frmer.c:(.text+0x136):對‘SDL_PollEvent’未定義的引用
collect2: error: ld returned 1 exit status

然後編譯新增 sdl-config --cflags --libs 就編譯通過

[email protected]:~/tmp$ gcc -o ubu frmer.c sdl-config --cflags --libs

linux/videodev.h : no such file or directory

sudo apt-get install libv4l-dev
sudo ln -s /usr/include/libv4l1-videodev.h   /usr/include/linux/videodev.h 

參考部落格
【1】解決SDL/SDL.h: No such file or directory的方法
【2】linux/videodev.h : no such file or directory