? CLion ? ? CMakeLists.txt ? ? QtCreator ?    发布于 2018-02-28   1437人围观   0条评论

前言

最近在写实验室的项目ROI,项目原本使用Python开发,由于之前种种原因造成项目种种问题,包括但不限于小bug众多、大bug难调、结构臃肿不够清晰等等。

本次重写准备用C++,项目环境CLion+QtCreator。这两者都不是很熟悉,所以在摸索。利用QtCreator写好简单的UI之后(这不是重点,随便画了一下,这个后面都好调),如何在CLion中编译便成了问题,Qt编译的原理有些绕,因为涉及到了元对象系统、uic方面的东西,所幸已经看过一些Qt编译的基本原理所以半天就搞定了。顺便在二月的最后一天,水一篇博客(逃)。

官方也提供了这方面的知识CMake Manual 5.10;

项目目录

这里提一下:

  • ROI项目的整体结构是,下面一个UI项目目录,用于编辑UI,还有一个GNURadio目录,用于编写后台代码。CMakeLists.txt放在ROI目录下。
  1. ├─ROI
  2. ├─bin % 存放编译生成的可执行文件
  3. └─ROI % 编译生成的可执行文件
  4. ├─GNURadio % 源文件目录之一
  5. └─top_block.cpp % 源文件
  6. ├─UI % 源文件目录之一
  7. ├─main.cpp % 源文件
  8. ├─widget.cpp % 源文件
  9. ├─widget.h % 源文件
  10. ├─widget.ui % 源文件
  11. ├─UI.pro % QtCreator项目文件,直接打开可以编辑UI
  12. └─UI.user.pro % 不用管
  13. ├─build-UI-Desktop... % QtCreator产生的影子目录
  14. ├─cmake-build-debug %
  15. └─CMakeLists.txt % CMake文件

再提几点:

  • QtCreator的影子目录(shadow build)。Q
查看更多