使用在Google Test下测试的现有C ++代码并添加Qt

时间:2011-04-13 05:41:39

标签: c++ qt makefile googletest

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

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

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

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

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

我应该使用qmake并修改它以生成我的google测试运行器以及Qt应用程序吗? 我应该保留我的makefile并使用qmake来构建和链接代码的UI部分,这些部分将依赖于原始makefile中生成的.o文件吗? 我应该做点什么吗?

最后,我将如何做以上任何选项?

1 个答案:

答案 0 :(得分:0)

CMake似乎与Qt一起运作良好(基于我对当前项目的经验)。有一套很好的宏来完成所有标准的Qt事物,而且它与其他工具的合理性很好。您的初始项目可能有点令人困惑,但我确信网上有很多Qt示例。

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

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

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


顺便说一下,你也没理由不得不停止使用makefile。 Qt的qmake只调用了一堆命令行工具,你也可以用它来做。