1

我正在使用 Linux (Ubuntu) 中的一些 c++0x 功能编写一个用 C++ 编写的程序。我在 Google Test 中写了一堆测试。我正在使用 g++ 和生成依赖项的普通 makefile。

现在我想在一个完全独立的 UI 上工作。

我已经决定 Qt 会很好,但发现它的构建有点复杂。我看到最简单的方法是使用 qmake。

我想知道如何将 Qt 构建到我的应用程序中,同时保持所有底层类独立于 Qt。我了解如何通过编写好的代码来做到这一点,但我想要一个好的构建系统

我不想切换到使用 Qt 的单元测试框架,因为我只想将 Qt 用于 UI,而且我看不到重写测试的意义。

我应该使用 qmake 并对其进行修改以生成我的谷歌测试运行器以及 Qt 应用程序吗?我是否应该保留我的 makefile 并使用 qmake 仅构建和链接代码的 UI 部分,这将取决于原始 makefile 中生成的 .o 文件?我应该做点别的吗?

最后,我将如何执行上述任何选项?

4

1 回答 1

0

CMake 似乎与 Qt 配合得很好(基于我对当前项目的经验)。有一组很好的宏可以做所有标准的 Qt 事情,而且它与其他工具的集成相当好。您的初始项目设置起来可能有点混乱,但我确信网上有许多 Qt 示例。

您无需切换测试框架即可使用 CMake。我使用 boost 测试框架,但就 CMake 而言,任何使用返回码的程序都可以正常工作。

如果您使用 cmake,甚至没有理由部分使用 qmake。

如果这是一个问题,Cmake 也是跨平台的。


顺便说一句,你也没有理由停止使用 makefile。Qt 的 qmake 只是调用了一堆命令行工具,您也可以在 make 中执行这些工具。

于 2011-04-13T06:48:37.147 回答