
对于各行业、各学科来说,C++ 仍然是最受欢迎的一种编程语言。这是有充分理由的。这意味着,目前存在多种可用的 C++ 工具,它们各有优缺点。其中,GNU 编译器套件 (GCC) 具有广泛的特性和能力,因此是最受欢迎的工具之一。随着这种的工具的普及,GCC 及其 C++ 专用工具,特别是标准 G++ makefile 文件,都值得深入研究。
什么是 GCC?
GCC 是 GNU Compiler Collection(GNU 编译器套件)的英文缩写。它包括适合多种软件语言的前端(在编译器领域中,前端指的是将软件语言转换成通用中间表示的组件。根据中间表示,编译器后端可以创建适合目标架构和操作系统的适当运行时工件)。GCC 最初是作为 GNU 操作系统的编译器编写而成的。
GCC 包括适用于以下方面的前端:
GCC 还适用于:Objective-C、Fortran、Ada、Go 和 D 以及这些语言的库。
GNU 系统尊重用户自由,属于 100% 免费软件。
C++ 开发工作效率挑战
如何优化 C++ 开发?只有充分理解我们在工作效率方面所面临的挑战,并找到尽可能减少困难的方法,才能实现优化。欲了解更多信息,请观看我们最新的网络研讨会视频!
什么是 gcc(小写)?
gcc 命令调用 GNU 编译器套件的编译器驱动程序。你会不会觉得 gcc 写错了?不,不是的。我们故意使用的小写。为什么呢?GCC 是应用程序的官方名称,而 gcc 则是关于如何在代码编写过程中调用 GNU 编译器套件。
在文件上运行 gcc 命令时,通过文件扩展名,可以判断该文件是否需要处理。默认 gcc 会判断为 C++ 源代码的文件扩展名有“.cpp”和“.cc”。gcc 还会假定“.c”文件采用 C 语言编写而成。
例如,运行 gcc -o [output_file] [input_file.c] 时,判断输入文件为 C 代码,然后用 C 编译器 (cc1) 处理编译过程。如果输入文件的扩展名为 .cpp 或 .c++,那么判断文件为 C++ 代码,然后用 C++ 编译器 (cc1plus) 处理编译过程。
为什么使用 G++?
在大部分情况下,只要编译 C++ 代码,可能就需要 C++ 编译器。你可以直接使用 g++ 进行操作。
运行 G++ 时,它会把源代码视为 C++,因此,从这方面来看,‘G++’就是‘gcc -x c++’。gcc 确实可以检测你目前是否正在编译 C++ 文件,然后按此进行编译;但是,同样地,如果你已然知晓自己正在编译 C++ 项目,那么明确要求使用 C++ 编译器也很合理。
一旦 G++ 驱动程序链接 C++ 程序,通常它会自动链接 libstdc++ 库,GCC 附带的标准 C++ 库(切记大写 GCC 与小写 gcc 程序之间的区别)。因此,从这方面来看,‘g++’ 和 ‘gcc -lstdc++’ 是相同的(还有更多信息)。
G++ 与 gcc 不同。由于 C++ 程序通常采用异常项,创建共享库或主执行文件时,G++ 可以自动添加 -shared-libgcc,这种做法是正确的(点击此处了解更多详细信息)。因此,从这方面来看

GCC是GNU编译器套件,包括C++编译器,用于多种语言。gcc是命令行调用,根据文件扩展名判断语言类型。G++是明确的C++编译器调用,常用于链接libstdc++。Makefile是自动化构建工具,简化编译过程。创建良好的Makefile可以提高C++开发效率,减少不必要的编译时间。
最低0.47元/天 解锁文章
1187

被折叠的 条评论
为什么被折叠?



