- GNU、GPL、GCC、G++
GNU:一个计划/运动,目标是创建一套完全自由的操作系统
GPL:GNU通用公共许可协议,广泛应用的自由软件许可证,linux发行时选择了GPL
GCC:GNU C Compiler,早期的C编译器,后来集成更多的编译器,GCC就代表 the GNU Compiler Collection
G++:GCC的C++编译器,g++ 是将 gcc 默认语言设为 C++ 的一个特殊的版本,链接时它自动使用 C++ 标准库而不用 C 标准库
编译器选择:根据后缀名,*.c调用C编译器,*.cpp调用C++编译器
编译C++程序:# g++ demo.cpp #或者 gcc -xc++ -lstdc++ -shared-libgcc demo.cpp(根据参考链接所述,现在使用gcc会自动进行编译器的选择)
https://www.zhihu.com/question/20940822/answer/16667772
- 查看cmake帮助
cmake -h
- 编译过程
cmake:生成makefile
make:生成目标文件