1,GNU 是一个计划或者叫运动。在这个旗帜下成立了 FSF,起草了 GPL 等。做了编辑器 Emacs 和编译器 GCC。
2,GNU 系统缺少操作系统内核。Linux 只是一个系统内核,于是合在一起打包发布叫 GNU / Linux。然后大家念着念着省掉了前面部分,变成了 Linux 系统。
GNU工具集包括以下部分:
3,GCC 编译器是 Linux 下默认的 C/C++ 编译器。GNU C 语言编译器。
4,g++ GNU C++ 语言编译器。
5,ld GNU 链接器,将目标文件和库文件链接起来,创建可执行程序和动态链接库。
6,ar 生成静态库 .a ,可以编辑和管理静态链接库。
7,make 生成器,可以根据 makefile 文件自动编译链接生成可执行程序或库文件。
8,gdb 调试器,用于调试可执行程序。
9,ldd 查看可执行文件依赖的共享库(扩展名 .so,也叫动态链接库)。
MinGW
10,MinGW,是MinimalistGNUfor Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。
Cmake
11,CMake(Cross platform Make)是一个开源的跨平台自动化构建工具, 可以跨平台地生成各式各样的 makefile 或者 project 文件, 支持利用各种编译工具生成可执行程序或链接库。整个 KDE 桌面环境的茫茫多程序都是用 CMake 脚本构建的,
Qt 工具集包括以下部分
12,qmake 核心的项目构建工具,可以生成跨平台的 .pro 项目文件,并能依据不同操作系统和编译工具生成相应的 Makefile,用于构建可执行程序或链接库。