工具介绍
常见的编译器
常见的c++译器MSVC(微软)、windows下的MinGW(开源)、linux下开源的GNU(gcc g++),其实MinGW其实就是GNU的封装。
QTcreator
qtcreator是专为qt开发而生的,他本身也是用qt开发的。但他本身也是一个独立的IDE,qt可以开发qt的gui项目,也可以开发非qt的纯c++项目。qtcreator完整运行需要kits(构建套件),包括编译器、调试器、工程管理等。
qmake
qmake是一个项目管理工具,可以自动生成makefile、visual studio专案文件和xcode专案文件。不管源码是否是qt所写,其实都可以使用qmake来管理,qmake能用于很多软件的构建过程。
qtcreator安装
qt安装比较简单,需要强调的是控件的选择,一般只配套安装MingGW工具。
工程创建
- 创建项目,指定项目的名字,和路径,如下图。
- 指定编译工具和编译过程文件存放目录(编译时自动创建),如下图,左边是设置路径,右边是经过编译后再指定目录生成的文件夹build...
- 指定UI所涉及的主要的类名、头文件、源文件、界面文件的名称,这些文件最终会放到我们第一步指定的目录下的项目名字(QT_ON)的目录下。左图是设置界面,右图是实际目录内部的文件。
错误处理
新安装的软件,如果编译时报错如下,则要点击下图的reset
Could not create directory “E:\oysl\QT\Error in ” Util.asciify(“build-untitled-Desktop_Qt_5_6_2_MSVC2015_64bit-Debug”)”: TypeError: Property ‘asciify’ of object Core::Internal::UtilsJsExtension(0x251a700) is not a function”
文件结构
会话管理器:管理多项目工程。如下图是空工程时自动创建的文件。
.pro文件是工程管理,qmake文件,在编译的时候先将该文件转换成makefile文件,再使用makefile去编译工程。
.h和.cpp是我们编程的源文件。
.ui文件是xml语言编写的程序文件,用来描述UI界面,该文件在编译的时候会被qt的编译器转换成Debug目录下的ui_mainwindow.h文件,该文件内创建了一个主UI界面的类,类中包含了setupUi函数,而该函数在man函数中调用。