SDL2与扩展库的ARM Linux交叉编译指南

4星 · 超过85%的资源 需积分: 50 58 下载量 137 浏览量 更新于2024-09-10 收藏 4KB TXT 举报
"本文档详细介绍了如何在Linux环境下进行SDL2及其扩展库的跨平台编译移植,特别针对ARM Linux系统。作者首先指导读者在/opt目录下创建一个arm子目录,并将SDL2安装包解压至指定路径。针对SDL2-2.0.3版本的编译,关键步骤包括修改/usr/include/limits.h文件,增加特定的长整型宏定义,以适应ARM架构的需求;然后执行configure脚本,指定了编译前缀、禁用部分非ARM支持的视频驱动和输入模块,选择arm-linux作为目标平台,i386作为构建平台;继续进行编译和安装。 对于SDL2_image-2.0.0的编译,配置选项中同样指定了前缀路径,以及静态链接的禁用和动态链接的支持。这些步骤旨在确保SDL2及其扩展库能够在ARM Linux环境中正确构建和运行,避免因硬件差异或平台限制导致的问题。 整个过程注重实用性和问题解决,对于那些在寻找SDL2跨平台移植教程的开发者来说,这篇文档提供了宝贵的参考和实践指南,可以帮助他们顺利实现从x86平台到ARM平台的代码迁移。"
2013-12-15 上传
SDL2.2.0.1的移植,包含SDL的每个参数的意思,包含交叉编译器的安装,包含移植过程中出错的处理方法。 --prefix=/usr/arm 安装SDL路径 --enable-shared=yes 构建共享库[开启] --enable-nasm 装配blitters x86上的nasm(汇编器) --enable-oss 启用支持oss声音的API --enable-alsa 启用支持ALSA声音的API --enable-alsa-shared 启用动态加载ALSA声卡的API --enable-pulseaudio 启用pulseaudio(脉冲音频) --enable-pulse-shared 启用动态加载脉冲音频支持 --enable-arts 启用支持Analog Read Time Synthesizer(模拟实时合成器) --enable-arts-shared 启用动态加载ARTS声卡的支持 --enable-joystick 启用joystick(控制杆)系统 --enable-cdrom 启用只读光盘系统[关闭] --enable-threads 启用多线程子系统 --enable-timers 启用计时器子系统 --enable-endian 大小端设置 --enable-file 启用文件系统 --enable-esd 支持Enlightened(文明)声音后台程序 --enable-nas 支持NAS(网络连接存储)声卡API --enable-diskaudio 支持磁盘写入声卡驱动 --enable-dummyaudio 支持虚拟声卡驱动 --enable-altivec 使用altivec装配位块传送器在PPC上 --enable-video-x11 使用x11视频驱动 --enable-dga 允许使用x1 DGA代码 --enable-video-x11-vm 使用x11 vm延长全屏 --enable-video-x11-dgamouse 使用x11 DGA鼠标事件 --enable-video-x11-xv 使用x11 xv音像延长视频 --enable-video-x11-xinerama 启动x11多银幕支持 --enable-video-dga 使用DGA2.0视频驱动 --enable-video-directfb 启用DirectFB视频驱动 --enable-video-photon 使用QNX(嵌入式实时系统)光子视频驱动 --enable-video-ps2gs 使用PS(游戏机)2 GS视频驱动 --enable-video-opengl 包括OpenGL(开放图形语言)创建上下文 --enable-video-pth 使用GNU pth库对多线程 --enable-pthreads 使用POSIX线程(可移植操作系统)对多线程 --enable-pthread-sem 使用多线程信号 --enable-input-events 使用Linux-2.4统一输入接口 --enable-input-tslib 使用Touchscreen库输入