【发布时间】:2014-07-22 18:24:20
【问题描述】:
我在通过 CMake 生成 Visual Studio 2010 Express 64 位项目时遇到问题。我首先安装了 VS2010 Express,然后是 Windows SDK 7.1,以便能够构建 64 位应用程序,然后尝试编译我的 CMake 项目。
我不记得使用 2008 Express 有那么困难,但是使用 2010 我一次又一次地失败。 2010 默认搜索随附的 7.0a SDK。 express 版本似乎提供了一个简化的 32 位版本,位于
.../Program Files(X86)/Microsoft SDKs/Windows/7.0a
Windows SDK 7.1 64bit 将默认安装在
.../Program Files/Microsoft SDKs/Windows/7.0
在 VS 2010 Express 中,平台 SDK 可以在每个项目地图的基础上进行更改,如果我这样做,继承的路径宏会出人意料地指向正确的 SDK。现在的问题是,CMake 对我自己搞砸项目文件感到不高兴。因此,它总是将 Platform SDK 条目重置为默认值,这将使 Windows SDK 指向 7.0a 并导致抱怨缺少 64 位库。
我现在看到解决此问题的两种可能性:
找到一种将 7.1 SDK 真正集成到 VS2010 Express 中的方法,就像 VS2008 一样。 VS2008 在注册表中搜索 Windows SDKs 条目中的标记“CurrentInstallFolder”,您可以将此条目更改为指向另一个 SDK。
想办法告诉 CMake (2.8.1) 在项目中设置正确的 Platform SDK。没有计划如何做到这一点...
如果有任何帮助,我将不胜感激。不幸的是,2010年有点强制性,我个人根本无法适应它......
【问题讨论】:
-
您在生成
Win64项目吗? -
是的,我正在生成>Visual Studio 10 Win64
标签: visual-studio-2010 winapi cmake 64-bit