0

我对 Visual Studio 项目/解决方案缺乏灵活性感到沮丧,但我意识到现在它使用了 MSBUILD,它可能非常强大,但只是没有将它暴露给 IDE。所以我看了一下 MSBUILD 文档,不知道从哪里开始!我希望有一本坚果壳书。有人可以指点我吗?

更具体地说,这是我想做的事情:

运行实用程序预处理器以生成 .CPP 和 .H 文件,然后由常规 C++ 项目使用。有多个输入(用于计算依赖关系;特别应该知道它使用的普通 .h 文件是否已更改)和多个输出(至少一个 .cpp 和一个 .h 文件)用作另一个项目中的文件。

FWIW,最复杂的情​​况涉及在“普通”C++ 项目中使用 Qt,该项目可以使用 VS Express 2010 或 MSBUILD 直接从服务器上的脚本构建。既然这是一个公共图书馆,可能有一些指南或任何帮助?请注意,VS 插件对构建阶段没有用处,但可用于最初生成项目文件,然后仅依赖 MSBUILD 和源代码中包含的内容。

有人能指出我正确的方向吗?

- 约翰

从那里开始变得更糟,但这是我的第一个目标。

4

1 回答 1

1

我在 Brian Kretzler 的《 MSBuild Trickery: 99 Ways to Bend the Build Engine to Your Will》一书中找到了我正在寻找的信息。

在前 18 页中,我发现了一些关键信息,以及我已经浏览过的在线文档,这些信息有助于理清思路,以便尝试处理我的项目。感兴趣的细节包括MSBuild 如何读取和操作文件中的内容的处理顺序、项目中的通配符何时展开以及如何处理生成的文件的快速要点,以及如何查看在某些实际情况下发生的情况甚至介入调试器。

FWIW,我设法解决了我的问题,而不使用我尚未理解的模糊的“.targets”/rules 文件,而只使用了更好的文档/示例功能(特别是具有通配符项目的目标并不关心文件扩展名不在任何“.target”中;很简单,可以从示例中复制,并允许在 IDE 项目中查看文件并使用 IDE 添加到列表中;同样,那里的 FileExtension 工作正常。)

于 2014-09-01T08:12:17.573 回答