Mac OS X编译SDL


SDL目录结构



SDL分数个库:
  • SDL-1.3.0-6217:SDL主库SDL.framework。
  • SDL_image-1.2.12:SDL图像辅助库SDL_image..framework。
  • SDL_mixer-1.2.12:SDL音频辅助库SDL_mixer..framework。
  • SDL_net-1.2.8:SDL网络辅助库SDL_net.framework。
  • SDL_ttf_2.0.11:SDL字符串渲染辅助库SDL_ttf.framework。
  • smpeg:解码mp2/mp3音频格式要用到的库,是SDL_mixer.framework辅助库。
    __________________________________________________
  • freetype-2.3.9:freetype是个渲染字体库,但在此种它没作为一个独立库,源文件被汇到入SDL_ttf编译成SDL_ttf.framework。
    __________________________________________________
  • SDL.framework:它就是SDL主库生成的SDL.framework,便于辅助库包含那些头文件。
    __________________________________________________
  • jpeg-8d:Mac OS X时可忽略。
  • lpng157:Mac OS X时可忽略。
  • libogg-1.3.0:Mac OS X时可忽略。
  • libvorbis-1.3.2:Mac OS X时可忽略。
  • smpeg:Mac OS X时可忽略。
  • zlib:Mac OS X时可忽略。
  • SDL.framework.iPhoneOS:Mac OS X时忽略。


SDL是个开源库,源代码、lib、dll都可从sdl官方网站上下载。但这里还是选择了重新编译,这是考虑到几个原因。

1、对官方SDL库进行过修改。有兴趣的可以对比这里下载的和官方版本,改了几处。
2、要调试。直接下载的库没法设置断点,即没法进行源码级跟踪。
3、进行源码级调试可以更好地理解SDL内部是如何工作。

编译SDL.framework。打开并编译<SDL>/SDL-1.3.0-6217/Xcode/SDL/SDL.xcodeproj。要确认编译是否成功,可以察看<SDL>/SDL-1.3.0-6217/Xcode/SDL/build下是否生成了一个新的SDL.framework目录。

把生成的SDL.framework复制到<SDL>/。

编译SDL_image.framework。打开并编译<SDL>/SDL_image-1.2.12/Xcode/SDL_image.xcodeproj。要确认编译是否成功,可以察看<SDL>/SDL_image-1.2.12/Xcode/build下是否生成了一个新的SDL_image.framework目录。

编译SDL_mixer.framework。打开并编译<SDL>/SDL_mixer-1.2.12/Xcode/SDL_mixer.xcodeproj。要确认编译是否成功,可以察看<SDL>/SDL_mixer-1.2.12/Xcode/build下是否生成了一个新的SDL_mixer.framework目录。

编译SDL_net.framework。打开并编译<SDL>/SDL_net-1.2.8/Xcode/SDL_net.xcodeproj。要确认编译是否成功,可以察看<SDL>/SDL_net-1.2.8/Xcode/build下是否生成了一个新的SDL_net.framework目录。

编译SDL_ttf.framework。打开并编译<SDL>/SDL_ttf-2.0.11/Xcode/SDL_ttf.xcodeproj。要确认编译是否成功,可以察看<SDL>/SDL_ttf-2.0.11/Xcode/build下是否生成了一个新的libSDL_ttf.framework目录。

编译smpeg.framework。打开并编译<SDL>/smpeg/Xcode/smpeg.xcodeproj。要确认编译是否成功,可以察看<SDL>/smpeg/Xcode/build下是否生成了一个新的smpeg.framework目录。

注:虽然smpeg.frame是作为运态链接库运行时被SDL_mixer.framework加载,但要编译SDL_mixer.framework可以不先编译smpeg.frame。因为是动态链接库,发布时需要把smpeg.framework和SDL_mixer.framework一样放在资源包中被发布

编译后形成的*.framework没有被放在统一目录下。要被主应用程序调用需手动复制到主应用程序能找到的目录下。


(未完待续)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值