在cygwin下,编译SDL1.2.9
时间:2006-04-25 来源:itlook
--------------------------- 在cygwin下,编译SDL1.2.9 ---------------------------
-- BeagleTam 2006-3-30 2:31 ******************************************************************************* 1. SDL
2. Cygwin
3. 下载安装必要的依赖文件
4. 编译libSDL
5. 编译测试程序
6. 试运行测试程序 *******************************************************************************
> 由于工作需要和条件限制,在cygwin下做一下媒体软件的代码学习。 <
> 今天需要用到SDL, 在cygwin下进行了编译,怕以后忘记,写下来做备忘。<
1. SDL
======
homepage: http://www.libsdl.org/index.php
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SDL 是 Simple DirectMedia Layer的缩写。
SDL是一个Open Soucer的跨平台的多媒体库, 设计为提供在底层存取Audio, Keyboard,
Mouse, Joystick,3D(openGL), 2D 视频framebuffer. 在很多的视频回放软件,
模拟器,以及流行的游戏中,都使用了该库。如著名的linux播放器
VCL(www.videolan.org), MPLayer(www.mplayerhq.hu)等. SDL支持的操作系统很多,包括:
官方支持:
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语言编写,但,可以在多种语言开发环境中使用,包括:
Ada, Eiffel, Java, Lua, ML, Pascal, Perl, PHP, Pike, Python, and Ruby.
2. Cygwin
=========
homepage: http://www.cygwin.com
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
就不再介绍了,对于没有条件安装linux的用户,使用来编译linux程序,用的很多。
我使用的cygwin的Setup文件是2.510.2.2, 并安装了X11,OpenGL等
3. 下载必要的依赖文件
=====================
http://www.libsdl.org/extras/win32/cygwin/
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
directx-devel.tar.gz (directX支持)
opengl-devel.tar.gz (openGL,在新版的cygwin中已经包含)
nasm.exe (asm编译器, cygwin中包含)
其实,以上3个文件,我只使用了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中已经包含,没有必要拷贝。
opengl-devel.tar.gz 中的头文件,在$CYGWIN/usr/include\w32api\GL中已有,
无须拷贝。
4. 编译libSDL
=============
编译方法和其他GPL程序步骤一致。
1 ) configure
2 ) make
3 ) make install
在cygwin上配置,编译,速度比较慢,我disable了不需要的功能,让configure
不去自动检测。
下面是我的configure, 我把它保存在一个叫configit.sh文件中,以方便更改和执行。
#!/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文件,执行起来就简单了。
$ ./configit.sh && make && make install
可以去看电视了,等下再回来。
5. 编译测试程序
===============
SDL中带了大量的测试程序,在目录test中。
$ cd test
$ ./configure
$ make
6. 试运行测试程序
=================
$ cd test
运行几个测试程序看看
$ ./testwin.exe
$ ./testgl.exe
$ ./testwm.exe
....
是不是可以看到窗口了??
===========================================================================<end
-- BeagleTam 2006-3-30 2:31 ******************************************************************************* 1. SDL
2. Cygwin
3. 下载安装必要的依赖文件
4. 编译libSDL
5. 编译测试程序
6. 试运行测试程序 *******************************************************************************
> 由于工作需要和条件限制,在cygwin下做一下媒体软件的代码学习。 <
> 今天需要用到SDL, 在cygwin下进行了编译,怕以后忘记,写下来做备忘。<
1. SDL
======
homepage: http://www.libsdl.org/index.php
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SDL 是 Simple DirectMedia Layer的缩写。
SDL是一个Open Soucer的跨平台的多媒体库, 设计为提供在底层存取Audio, Keyboard,
Mouse, Joystick,3D(openGL), 2D 视频framebuffer. 在很多的视频回放软件,
模拟器,以及流行的游戏中,都使用了该库。如著名的linux播放器
VCL(www.videolan.org), MPLayer(www.mplayerhq.hu)等. SDL支持的操作系统很多,包括:
官方支持:
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语言编写,但,可以在多种语言开发环境中使用,包括:
Ada, Eiffel, Java, Lua, ML, Pascal, Perl, PHP, Pike, Python, and Ruby.
2. Cygwin
=========
homepage: http://www.cygwin.com
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
就不再介绍了,对于没有条件安装linux的用户,使用来编译linux程序,用的很多。
我使用的cygwin的Setup文件是2.510.2.2, 并安装了X11,OpenGL等
3. 下载必要的依赖文件
=====================
http://www.libsdl.org/extras/win32/cygwin/
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
directx-devel.tar.gz (directX支持)
opengl-devel.tar.gz (openGL,在新版的cygwin中已经包含)
nasm.exe (asm编译器, cygwin中包含)
其实,以上3个文件,我只使用了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中已经包含,没有必要拷贝。
opengl-devel.tar.gz 中的头文件,在$CYGWIN/usr/include\w32api\GL中已有,
无须拷贝。
4. 编译libSDL
=============
编译方法和其他GPL程序步骤一致。
1 ) configure
2 ) make
3 ) make install
在cygwin上配置,编译,速度比较慢,我disable了不需要的功能,让configure
不去自动检测。
下面是我的configure, 我把它保存在一个叫configit.sh文件中,以方便更改和执行。
#!/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文件,执行起来就简单了。
$ ./configit.sh && make && make install
可以去看电视了,等下再回来。
5. 编译测试程序
===============
SDL中带了大量的测试程序,在目录test中。
$ cd test
$ ./configure
$ make
6. 试运行测试程序
=================
$ cd test
运行几个测试程序看看
$ ./testwin.exe
$ ./testgl.exe
$ ./testwm.exe
....
是不是可以看到窗口了??
===========================================================================<end
相关阅读 更多 +