使用 Visual Studio 2013 编译 Windows XP 的可执行程序
最近在开发一个小工具,需要支持 OS X 和 Windows 两个平台。于是乎使用了 CMake 和 CLion 来开发,其实也就是觉得好玩。
其中 Windows 的开发环境为 Windows 7 SP1 + Visual Studio 2013,编译出来的程序使用都很正常,然而同样的可执行文件放到 Windows XP 会提示无效的 Win32 应用程序。经过搜索发现,是因为 Windows XP 使用比较旧的 Windows 7.1 SDK,而 Vista 以后默认都不再支持。要支持的话,网上有几种方法,一个就是使用工程文件,指定 Toolchain 为 v120_xp。这种方式网上广为流传,很可惜的是,我用的不是工程文件,而是 CMake 生成的 Makefile 文件,这种方式不适用。
