gcc是C语言编译器,而g++则是C++语言编译器,虽然gcc命令也可以用来编译C++语言的源码,但是它最终是要调用g++的。
make工具通过你提供的一个名为Makefile的文件,根据Makefile的内容来决定如何编译源文件。而关于make和cmake的区别,
你可以理解为make需要使用Makefile,而cmake是产生Makefile的工具。
qmake是Qt提供的一个编译工具,他可以生成与平台无关的.pro文件,然后利用该文件生产与平台相关的Makefile文件。
Makefile文件中包含了要创建的目标文件或可执行文件、创建目标文件所依赖的文件和创建每个目标文件时需要运行的命令等信息。
最后使用mingw32-make工具来完成自动编译,mingw32-make就是通过读入Makefile文件的内容来执行编译工作的。
使用mingw32-make命令时会为每一个源文件生成一个对应的.o目标文件,最后将这些目标文件进行链接来生成最终的可执行文件。
与vc++6.0运行程序时编译、链接、运行三个按钮相似。
- gcc/g++和MinGW是两种不同的编译器;
- Vs背后采用的是gcc/g++,gcc/g++多用在linux系统下;
- Qt下(安装时可选择)两种编译器都可以使用,其中gcc/g++是借助Vs平台编译的;
- cmake和qmake均是编译器生成Makefile文件所需要的工具(Makefile文件中包含了要创建的目标文件或可执行文件、创建目标文件所依赖的文件和创建每个目标文件时需要运行的命令等信息。)
- cmake(联合make)在gcc/g++编译器中使用,qmake(联合mingw32-make)在Qt中使用;