con*_*ych 12 c++ cmake visual-studio
我发现了许多与我要提出的问题类似的问题,但它们似乎没有帮助我理解如何做我想做的事情,假设它甚至可行.
我非常喜欢Visual Studio,我想将它用作C++项目的开发环境,但我也希望能够在我的双启动Linux系统上构建我的任何项目.我还希望能够将我的标头和源文件组织到共享驱动器上的特定目录结构中.我想使用CMake配置一个项目,使用Make on Linux或VS在Windows上构建它.
因此,可以在Visual Studio 2012 Pro中维护一个项目,以便利用其IntelliSense和编译来快速编写代码并对其进行编译,然后轻松地将源文件作为CMake配置放在不同的目录中(我想我仍然需要维护我的CMake .txt文件,无论如何)?
每次添加或修改代码,然后更新我的CMake .txt文件,我都可以做一些事情,比如将我的源码从项目目录复制到我的CMake文件夹,但这似乎很耗时.
编辑:我知道有一个转换器将解决方案转换为CMake文件.这是我最好的选择吗?如果是这样,它是否运作良好?
小智 5
虽然我不推荐这个工具,因为我没有使用它,它似乎是最接近你正在寻找的.
http://sourceforge.net/projects/vcproj2cmake/
它需要在您的机器上安装ruby运行时,但会根据您的visual studio项目生成CMakeLists.
我会谨慎地依赖于此,因为在转换过程中可能会有一些微妙的CMake细微差别,但它有几个有利的评论,并且肯定会使过程更容易,即使在检查之前涉及一些手动步骤in(以验证CMake脚本是否正确).
也许您可以将其与单元测试集成以验证cmake脚本的完整性?您可以随时为您找到的问题提供补丁.
我推断一些事情,如果我做任何假设,请原谅我.
如果您的目标是跨平台而且CMake不是技术要求(只是达到目的的手段),但您不希望采用推荐的CMake工作流程,因为它不是非常直观(我完全可以理解)也许你可以看看Premake,它是更新但仍然是一个相当强大的项目生成工具:
http://industriousone.com/premake
我发现语法(纯lua)更容易理解,并且它更接近Visual Studio解决方案对其项目进行建模.这可能是一个更自然的工作流程.
它也是开源的,我发现添加扩展程序实际上非常容易(自从我上次使用它以来已经过去了一年,我现在还不确定它的状态).也许您也可以构建一个反向生成器,因为该库带有一个可视化工作室项目解析器,并且具有一点创造力,您可以在两个方向上生成它.
一年前我选择不采用它,因为当时它很难生成相互依赖的XCode项目(也许它已经修复了!)但是我对Makefiles或Visual Studio解决方案没有任何问题.
我不建议从visual studio项目反向生成项目生成脚本的原因很简单,它会对您的项目产生非常尴尬的依赖.Visual Studio项目没有标准化,甚至没有打开 - 如果Microsoft更改了格式,您可能会破坏您的工作流程,直到您或其他人为您的反向生成器创建补丁以让您再次工作.
您可能会认为项目生成共享相同的问题,但Visual Studio历来始终向后兼容 - 或者至少使用工具来执行项目更新.在旧版本中生成项目很可能总是有效,而尝试解析Visual Studio解决方案的较新版本则更容易出错和破坏.
如果这是一个严格的生产项目,您希望在未来的许多年内继续使用和维护,我强烈建议采用经过验证的工作流程(直接在CMake或Premake文件中工作),即使它不太理想或不舒服首先是开发人员.如果它将成为一个长期项目,那么当您需要继续在多个平台和不同团队之间维护一个特殊构建系统时,您需要熟悉新工作流程的时间会相形见绌.另外,作为开发人员,它会为您的腰带添加另一种工具.只是我的2美分〜
| 归档时间: |
|
| 查看次数: |
7771 次 |
| 最近记录: |