Writen by Rao
2012年04月20日 星期五 21时57分16秒
**********************************
下面我介绍一下SDL以及SDL的扩展库在arm11上的交叉编译
在这里我将SDL 交叉编译的相关都安装在/opt/arm目录下
相关简介:
SDL官方网站 http://www.libsdl.org/
SDL编译移植(Up-teach6410平台)
系统环境:linux
移植环境:arm11
编译工具链:gcc-4.3.1(系统默认工具链)
1.1 编译jpeg-7
软件名称 libjpeg
功能描述 libjpeg是一个用c语言编写支持jpeg解码、编码的库
下载地址 http://linux.softpedia.com/get/Programming/Libraries/libjpeg-160.shtml
软件版本 jpegsrc.v7.tar.gz
依赖关系 默认
1.2 编译libiconv-1.14
软件名称 libiconv
功能描述 libiconv库为需要做转换的程序,实现了一个字符编码到另一个字符编码的转换
下载地址 http://www.gnu.org/software/libiconv/#downloading
软件版本 libiconv-1.14.tar.gz
依赖关系 默认
1.3 编译libpng-1.5.10
软件名称 libpng
功能描述 libpng是多种应用程序所使用的解析PNG图形格式的函数库
下载地址 http://www.libpng.org/pub/png/libpng.html
软件版本 libpng-1.4.2.tar.gz
依赖关系 默认
1.4 编译SDL-1.2.14
软件名称 SDL
功能描述 SDL是一个自由的跨平台的多媒体开发包,适用视频音频和其他应用的软件
下载地址 http://www.libsdl.org/download-1.2.php
软件版本 SDL-1.2.14.tar.gz
依赖关系 默认
1.5 编译SDL_image-1.2.10
软件名称 SDL_image
功能描述 SDL_image是用于处理图形文件的开源函数库
下载地址 http://www.libsdl.org/projects/SDL_image/
软件版本 SDL_image-1.2.10.tar.gz
依赖关系 SDL libpng libjpeg
1.6 编译SDL_gfx-2.0.22
软件名称 SDL_gfx
功能描述 图形库,也就是传统的一些图形操作,几个基本的功能包括了缩放,旋转,几何图形绘制,FPS控制
下载地址 http://www.ferzkopp.net/Software/SDL_gfx-2.0/SDL_gfx-2.0.22.tar.gz
软件版本 SDL_gfx-2.0.22.tar.gz
依赖关系 SDL
1.7 编译SDL_ttf-2.0.10
软件名称 SDL_ttf
功能描述 SDL_ttf是让应用程序能渲染汉字的扩展库
下载地址 http://www.libsdl.org/projects/SDL_ttf/
软件版本 SDL_ttf-2.0.10.tar.gz
依赖关系 SDL freetype libiconv
SDL-1.2.14
./configure --prefix=/opt/arm --disable-video-nanox -disable-video-qtopia --disable-static --enable-shared --disable-video-photon --disable-video-ggi --disable-video-svga --disable-video-aalib --disable-video-dummy --disable-video-dga --disable-arts --disable-esd --disable-alsa --disable-video-x11 --disable-nasm --disable-joystick --disable-input-tslib -enable-video-fbcon --host=arm-linux
libiconv-1.14
./configure --prefix=/opt/arm --disable-static --enable-shared --with-libiconv-prefix=/opt/arm --host=arm-linux cc=arm-linux-gcc
jpeg-7
./configure --prefix=/opt/arm --disable-static --enable-shared --host=arm-linux cc=arm-linux-gcc
libpng-1.5.10
./configure --prefix=/opt/arm --disable-static --enable-shared --host=arm-linux cc=arm-linux-gcc
SDL_image-1.2.10
./configure --prefix=/opt/arm --host=arm-linux --disable-static --enable-shared --with-sdl-prefix=/opt/arm CPPFLAGS=-I/opt/arm/include/SDL LDFLAGS=-L/opt/arm/lib
SDL_gfx-2.0.22
./configure --prefix=/opt/arm --disable-static --enable-shared --with-sdl-prefix=/opt/arm CPPFLAGS=-I/opt/arm/include/SDL LDFLAGS=-L/opt/arm/lib --host=arm-linux --enable-mmx=no
freetype-2.1.10
./configure --prefix=/opt/arm --disable-static --enable-shared --host=arm-linux
SDL_ttf-2.0.10
./configure --prefix=/opt/arm --disable-static --enable-shared --disable-sdltest --with-sdl-prefix=/opt/arm --with-freetype-prefix=/opt/arm/ CPPFLAGS=-I/opt/arm/include/ CPPFLAGS=-I/opt/arm/include/ LDFLAGS="-L/opt/arm/lib -liconv" --host=arm-linux
#手工修改Makefile,去掉OpenGL相关处理
# 去掉-I/usr/include -DHAVE_OPENGL
# 改成GL_LIBS =
# 266行 glfont_LDADD = libSDL_ttf.la -lm
#手工修改 glfont.c.全部清空,写入如下
#int main(int argc ,char **argv) { return 0;}