本人对C++开发完全不熟悉,但一个python项目需要的缘故,要修改SDL2的源码,网上搜资料,发现关于SDL源码编译的内容少得可怜,而且对C++的门外汉太不友好了,导致走了很多弯路。
尝试了各种环境:
- 本机 Win10+VS_2019: 生成成功,不能用(提示不是有效的win32程序)
- 本机 Win10+VS_2015: 生成失败,找不到windows sdk
- 本机 Win10+MinGW: make失败, 无效的提示符
- 虚拟机 WinXP+MinGW: 安装失败, 无法下载需要的库文件
- 虚拟机 Win7+VS_2013:生成失败, 找不到windows sdk
- 虚拟机 Win7+MinGW: 安装失败, 无法下载需要的库文件(后来从本机copy后安装成功, 但make又失败了)
- **虚拟机 Win7+VS_2012**:生成成功,修改平台为x64可用
最后在Win7+vs_2012环境成功了,却发现仅仅是平台选项的问题,返回去在“本机 Win10+VS_2019”环境下修改配置, 也成功了。不过应该还是2012环境下生成的兼容性更好一些,2019的这个版本太新了。
下面详细记述过程
- 安装visual studio 2012 express (免费版,之后的版本都叫community了),注意一定要下载DVD版的,exe版非常小,要在安装的时候下载需要的包,经常下载不下来。VS2012官网下载 / VS2012百度网盘下载-提取码:q138)
- 下载SDL2源码。SDL2 官网下载 / SDL2 百度网盘下载-提取码:8n7z
- 用VS2012打开项目,由于SDL源码中已经做好了vs的solution,直接找到解决方案文件打开就好了,位置在[SDL ROOT]/VisualC/SDL.sln。如下图所示:
- 右击SDL2这个项目直接“生成”就可以了,生成结果会输入在console中。
要注意的是:根据运行环境是32位和64位的,需要调整平台(platform)选项。
- 右击项目,选择属性:
- 点击配置管理器
- 分别选择release和debug版本对应的平台,32位选win32,64位选x64
- 生成的时候,debug版带调试信息,但文件大,性能较差,release版更适合生产运行时使用。
===
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。