SDL及扩展库在ARM-Linux 完整移植
来源:互联网 发布:老死什么感受知乎 编辑:程序博客网 时间:2024/06/08 17:10
SDL支持库的移植参见.我的博客文章.<<ARM Linux下一些常用库的移植 >>
http://blog.chinaunix.net/u3/105675/showart_2195157.html
./configure --prefix=$PWD/../../output/arm-linux --disable-video-nanox --disable-video-qtopia --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 --enable-joystick --enable-input-tslib --enable-video-fbcon --host=arm-linux --build=i386 CPPFLAGS="-I$PWD/../../output/arm-linux/include" LDFLAGS="-L$PWD/../../output/arm-linux/lib -lts -liconv"
- --enable-input-tslib #支持tslib 触摸屏
- --disable-x11 --enable-video-fbcon #关闭X11支持,打开framebuffer LCD输出
- --disable-alsa #音频使用oss,如果使用--enable-alsa,必须先编译alsa-libs
- --host=arm-linux #使用arm-linux-gcc编译工具.
- --prefix=$PWD/../../output/arm_linux #SDL安装目录
- --disable-joystick #去掉游戏杠支持
- CPPFLAGS,LDFLAGS主要是为 --enable-input-tslib准备。否则在依赖文件里(.libs/libSDL.lai)会采用 dependency_libs=' -lm /usr/local/lib/libts.la -ldl -lpthread'这样在ARM版明显错误。如果对触摸屏输入不敏感,可以直接 --disable-input-tslib
- 而-liconv因为在扫描目录也有libiconv,这样自动加入依赖。以免编译其它SDL依赖库出错。
执行如下的configure 脚本生成Makefile
testgl,testjoystick的编译.
LIBS = -L/usr/local/lib -Wl,-rpath,/usr/local/lib -lSDL -lpthread -liconv
CFLAGS = -g -O2 -I$(SDL_DIR)/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT
LIBS = -L$(SDL_DIR)/lib -lSDL -lpthread
3.SDL_image移植
- 下载:http://www.libsdl.org/projects/SDL_image/release/SDL_image-1.2.10.tar.gz
- 解压 tar xvzf SDL_image-1.2.8.tar.gz
- cd SDL_image-1.2.8
- 生成 configure ,执行 ./autogen.sh
- 生成Makefile
注意这里提示报错
configure: error: in `/home/huisen/libs/SDL_image-1.2.8':
configure: error: C compiler cannot create executables
最大可能性中间某一些库没有移植,比如libtiff,要先移植好库再使用SDL_image
实测发布发现libtiff还是尺寸较大。因此可以用如下语句取消对tiff的支持
./configure --enable-shared --enable-static --host=arm-linux --prefix=$PWD/../../output/arm-linux --enable-bmp --enable-gif --enable-jpg --enable-png --disable-tif --enable-pnm --enable-xpm --disable-sdltest SDL_CFLAGS="-I$PWD/../../output/arm-linux/include/SDL" SDL_LIBS="-L$PWD/../../output/arm-linux/lib -lSDL" LIBPNG_CFLAGS="-I$PWD/../../output/arm-linux/include" LIBPNG_LIBS="-L$PWD/../../output/arm-linux/lib -lpng" CPPFLAGS="-I$PWD/../../output/arm-linux/include" LDFLAGS="-L$PWD/../../output/arm-linux/lib -ljpeg -lts -liconv"编译 make
- 主页 http://www.libsdl.org/projects/SDL_ttf/
- 解压 tar xvzf SDL_ttf-2.0.9.tar.gz
cd SDL_ttf-2.0.9
生成Makefile
- 修改Makefile,把语句当中的去掉opengl支持(这可能是这一版的BUG)
这一句改成 GL_LIBS =
这一句修改成 glfont_LDADD = libSDL_ttf.la -lm
- 修改源码
cd SDL_mixer-1.2.9
生成Makefile
./autogen.sh
./configure --host=arm-linux --prefix=$PWD/../../output/arm-linux --with-sdl-prefix=$PWD/../../output/arm-linux --enable-shared --enable-static --enable-SDL_ttf
编译 makecd SDL_gfx-2.0.20
生成Makefile
- SDL及扩展库在ARM-Linux 完整移植
- SDL及扩展库在ARM-Linux 完整移植
- arm Linux平台下SDL及扩展库的移植
- ----ffmpeg ---sdl在arm上的移植
- SDL移植到ARM-linux上
- SDL移植到ARM-linux下
- SDL移植到ARM-linux下
- Linux操作系统在ARM上 的移植过程及分析
- Linux操作系统在ARM上 的移植过程及分析
- ARM-linux编译SDL
- 关于linux在arm上的移植
- 在arm平台下移植linux
- 在ARM-Linux平台上移植SQLite
- 在ARM-Linux平台上移植SQLite
- ARM-Linux OpenGL ES & SDL
- 在linux及arm上移植OpenCV的相关软…
- SDL和SDL扩展库交叉编译
- SDL和SDL扩展库交叉编译
- Windows 2003 IIS服务常见故障排查全攻略
- android学习第二课(布局管理)
- 动态加载dll,扩展系统功能
- Fedora安装android开发环境
- 硬盘安装XUBUNTU
- SDL及扩展库在ARM-Linux 完整移植
- Ant Task check if a file exists
- git 获取分支代码
- CentOS6.3 安装gcc及简单使用
- jqGrid 属性、事件全集
- 关于js禁用右键菜单
- ie内核语句执行顺序
- Use Case Template
- c语言之数组 sizeof strlen