我正在寻找如何使用clionIDE在cmake中编译QT动态链接项目。我遇到了以下项目设置的问题。我关注了this教程、编译并使用mingw32位和一个工具包运行它,该工具包链接到使用mingw-w64编译的Qt(其qmake文件位于C:/msys64/mingw64/bin中)我的项目设置如下所示:CMakeLists.txtmain.cppnotepad.cppnotepad.hnotepad.ui在clion中,我使用了以下cmake文件来构建这个项目。cmake_minimum_required(VERSION3.7)set(CMAKE_PREFIX_PATHC:/msys64
在我们的项目中,我们使用QtTestLib进行单元测试。原因是整个项目已经在可能的情况下使用Qt并且它是一个GUI应用程序,所以我们希望具有测试GUI界面的能力。我们的项目是由MSVC编译的,因此我们不希望为每个测试创建一个单独的项目文件,因为这会使解决方案变得困惑。因此,我们为所有测试创建了一个项目。所有测试都应该在CIS(持续集成)上自动化,因此我们尝试使用一些XSLT转换通过XML格式的输出文件将我们的测试插入Hudson。但是测试的输出似乎有问题。如果您对所有测试使用单个main()并且仅向每个测试传输cmd行参数:#include"MyFirstTest.h"#include
也许我遗漏了一些东西,但对我来说似乎真的很愚蠢,为QtTest框架提供的唯一教程让你测试QString类。单元测试的典型用例是....测试您自己编写的类,但是在教程中没有提到如何在不同的项目中引用您的类进行测试,谷歌也让我失望了(和我真的怀疑复制粘贴类是一种好方法)。我什至翻阅了3种不同的Qt书籍,但没有提到QtTest。 最佳答案 您可以像这样在.pro文件中添加指向其他项目目录的包含路径:INCLUDEPATH+=然后它应该能够找到您包含的标题。编辑:基于评论这完全是另一个故事。undefinedreference通常意味着您缺