使用Cmake和Qt Creator

the*_*ean 21 c++ ide cmake qt-creator

我想Qt creator和他们Cmake一起使用(请不要问我关于我的动机,接受这个作为给定的.)

我成功地设置了Qt创建者使用cmake"Cmake":看到这个, 这个这个文件关于我是如何做到的.

我成功创建了hello world项目,但我无法在项目中创建文件,只将现有文件添加到项目树中,之后将其添加到cmake列表中.Qt创建者"添加新..."的标准操作不起作用,我找不到原因.

有没有人一起使用Qt创作者和"Cmake"?这种组合实际上是否可行?

注意:我正在使用Qt creator v2.4.1.

Evg*_*zin 14

您可以在CMakeLists.txt中使用glob表达式添加文件,如下所示:

file(GLOB SRC . *.cpp)
add_executable (your_exe_name ${SRC})
Run Code Online (Sandbox Code Playgroud)

Cmake将在您下次运行时选择新的cpp文件,QtCreator将在项目浏览器中显示它们.

更新

这个解决方案可能很有用,但正如评论中所述 - 这不是一个好习惯.每当有人添加新的源文件并提交更改时,您需要重新运行cmake来构建所有源.通常我只是touch一个CMakeLists.txt文件,如果我从存储库中汇总最近的更改后我的构建被破坏了.之后makecmake自动运行,我不需要手动运行它.尽管如此,我认为CMakeLists.txt中的显式源列表是一件好事,他们称之为CMake Lists是有原因的.

  • 但请记住,CMake使用globing收集源文件被认为是一种不好的做法. (4认同)
  • 我正在使用文件(GLOB_RECURSE SRC*.cpp) (3认同)

ala*_*nxz 10

当您使用"新建文件或项目..."对话框在QtCreator中添加新文件时,它仅在磁盘上创建文件,它不会自动将文件添加到CMakeLists.txt.您需要通过编辑CMakeLists.txt文件手动完成此操作.

下次构建项目时,将重新运行CMake,QtCreator将获取新文件并在项目浏览器中显示它们.

  • 可能是我不够清楚,我正在寻找在目录中创建文件的方法。文件夹上的右键 -> 添加项目等。当我使用 cmake 时,这对我不起作用 (2认同)

cha*_*hao 5

我解决了这个问题,我以标准方式添加了新文件(CTRL + N),然后在CMakeLists中添加了所需的文件.之后,右键单击项目树视图中的项目,然后选择Run CMake选项.在此之后,文件显示在项目列表树中.只有建设是不够的.