--------------------------- 在cygwin下,編譯SDL1.2.9 --------------------------- -- BeagleTam 2006-3-30 2:31 ******************************************************************************* 1. SDL 2. Cygwin 3. 下載安裝必要的依賴文件 4. 編譯libSDL 5. 編譯測(cè)試程序 6. 試運(yùn)行測(cè)試程序 ******************************************************************************* > 由于工作需要和條件限制,在cygwin下做一下媒體軟件的代碼學(xué)習(xí)。 今天需要用到SDL, 在cygwin下進(jìn)行了編譯,怕以后忘記,寫下來(lái)做備忘。 SDL支持的操作系統(tǒng)很多,包括: 官方支持: Windows Linux, BeOS, MacOS Classic, MacOS X, FreeBSD, OpenBSD, BSD/OS, Solaris, IRIX, QNX. 非官方支持,包含porting代碼: Windows CE, AmigaOS, Dreamcast, Atari, NetBSD, AIX, OSF/Tru64, RISC OS, and SymbianOS. SDL使用C語(yǔ)言編寫,但,可以在多種語(yǔ)言開發(fā)環(huán)境中使用,包括: Ada, Eiffel, Java, Lua, ML, Pascal, Perl, PHP, Pike, Python, and Ruby. 2. Cygwin ========= homepage: http://www. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 就不再介紹了,對(duì)于沒有條件安裝linux的用戶,使用來(lái)編譯linux程序,用的很多。 我使用的cygwin的Setup文件是2.510.2.2, 并安裝了X11,OpenGL等 3. 下載必要的依賴文件 ===================== http://www./extras/win32/cygwin/ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ directx-devel.tar.gz (directX支持) opengl-devel.tar.gz (openGL,在新版的cygwin中已經(jīng)包含) nasm.exe (asm編譯器, cygwin中包含) 其實(shí),以上3個(gè)文件,我只使用了directx-devel.tar.gz中的include中的.h文件 directx-devel.tar.gz解開后,目錄如下: |+include / | +w32api / | |-d3dtypes.h | |-ddraw.h | |-dinput.h | |-directx.h | |-dsound.h |+lib / +w32api / |-libddraw.a |-libdinput.a |-libdplayx.a |-libdsound.a |-libdxguid.a 將include/w32api中的頭文件copy到 $CYGWIN/usr/include/w32api/中, ^^^^^^^^^^^^^^^^^^^^^^^^^^ lib下的.a文件,在$CYGWIN/lib/w32api中已經(jīng)包含,沒有必要拷貝。 opengl-devel.tar.gz 中的頭文件,在$CYGWIN/usr/include\w32api\GL中已有, 無(wú)須拷貝。 4. 編譯libSDL ============= 編譯方法和其他GPL程序步驟一致。 1 ) configure 2 ) make 3 ) make install 在cygwin上配置,編譯,速度比較慢,我disable了不需要的功能,讓configure 不去自動(dòng)檢測(cè)。 下面是我的configure, 我把它保存在一個(gè)叫configit.sh文件中,以方便更改和執(zhí)行。 #!/bin/bash ./configure \ --enable-directx \ --disable-joystick \ --disable-cdrom \ --disable-alsatest \ --disable-alsa-shared \ --disable-esd \ --disable-esdtest \ --disable-esd-shared \ --disable-arts \ --disable-arts-shared \ --disable-nas \ --disable-diskaudio \ --disable-mintaudio \ --disable-dga \ --disable-video-dga \ --disable-video-photon \ --disable-video-fbcon \ --disable-video-ps2gs \ --disable-video-xbios \ --disable-video-gem \ --disable-video-opengl \ --disable-osmesa-shared \ --disable-pth \ --disable-atari-ldg 有該config.sh文件,執(zhí)行起來(lái)就簡(jiǎn)單了。 $ ./configit.sh && make && make install 可以去看電視了,等下再回來(lái)。 5. 編譯測(cè)試程序 =============== SDL中帶了大量的測(cè)試程序,在目錄test中。 $ cd test $ ./configure $ make 6. 試運(yùn)行測(cè)試程序 ================= $ cd test 運(yùn)行幾個(gè)測(cè)試程序看看 $ ./testwin.exe $ ./testgl.exe $ ./testwm.exe .... 是不是可以看到窗口了?? =========================================================================== 本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog./u/17978/showart_104440.html |
|