2010年2月5日 星期五

移植SDL(Simple DirectMedia Layer)

1. 開發環境:
(1). CPU: Andes RISC CPU core_N12(N1233).
(2). 平台: ADP-XC5FF676 V1.1.
(3). Linux OS: Ubuntu10.04.
(4). Toolchains: AndeSight v1.4 for Linux.
(5). Embedded Linux2.6.27
2. 目的:
(1). 至 http://www.libsdl.org/download-1.2.php 下載SDL函式庫source code並移植至Andes Core.
(2). SDL(Simple DirectMedia Layer http://www.libsdl.org/)是一套開放原始碼的多媒體開發函式庫,使用C語言所撰寫而成,SDL支援圖形,聲音,輸出入控制等函式.
3. 實驗步驟:
(1). 使用Terminal輸入〝source bashrc.nds32le-linux-V1f〞指定交叉編譯路徑,這的步驟請參照setup步驟.
注意: 因為編譯SDL是之後gnash(Flash player)需要用到函式庫之一,因此選擇有浮點運算(FPU)功能的Andes Core N1233.
(2). 輸入〝tar -xvf SDL-1.2.14.tar.tar〞解壓縮.

(3). 輸入〝cd SDL-1.2.14/〞至libmad目錄下.(4). 開啟〝/build-scripts/config.sub〞檔案修改程式.Line 252增加,Line 334增加.注意:〝Tab鍵〞與〝空白鍵〞差異.
(5). 輸入〝./configure --host=nds32le-linux --prefix=/usr/local/sdl --disable-shared --enable-static --disable-audio --disable-cdrom --disable-alsa --disable-esd --disable-arts --disable-nasm --disable-video-x11 --disable-video-dga --enable-video-fbcon --disable-video-qtopia --disable-video-dummy〞自動設定Makefile參數.
注意: configure video輸出的設定參數有X Window與Frame buffer,我們先預設Frame buffer,因此參數下〝--enable-video-fbcon〞.(6). 輸入〝make〞開始編譯.(7). 輸入〝sudo PATH=/home/acer/Andestech/AndeSight14/toolchains/nds32le-linux-glibc-V1f/bin:$PATH make install〞,輸入password開始安裝.(8). 安裝的函式庫位置在〝/usr/local/sdl/〞下.


3 則留言:

  1. 請問要怎麼初始化SDL
    我的AG101上可以跑QT4.6
    但跑SDL時
    我一直遇到No available video device
    請問是哪裡錯了

    回覆刪除
  2. 您好
    想請問一個問題
    我的版子是ADP-AG101
    我想在上面跑SDL
    但初始化時總是遇到
    No available video device
    請問是哪裡錯了?

    回覆刪除
  3. 我想在你自己的部落格已經找出答案,這個SDL函式我只是編譯過,但是我沒有時間測試,非常抱歉,
    http://damody.pixnet.net/blog/post/27488604

    回覆刪除