深入了解Linux编译器GCC4.9 (linux gcc4.9)
在Linux环境中,编译器是必不可少的工具之一。其中最为流行的编译器之一就是GNU Compiler Collection(简称GCC)。GCC不仅仅是Linux操作系统的默认编译器,它也是跨平台的,因此广泛应用于很多不同的平台上。本文将深入探讨GCC4.9版本的一些特性和使用方法。
何为GCC
GCC是一款开源的编译器套件,由GNU组织维护。GCC的全称是GNU Compiler Collection,它支持多种编程语言,包括C、C++、Objective-C、Fortran、Ada、Java和Go等。GCC是一款跨平台的编译器,支持许多不同的操作系统和处理器架构。
GCC编译器的特点
作为一个编译器,GCC有一些独特的特点。
1.跨平台:GCC支持多种操作系统和处理器架构,是一款真正跨平台的编译器。开发者可以在他们的本地计算机上使用GCC编译代码,然后将它在不同的平台上运行。
2.高度可定制:GCC是一个极其灵活的编译器套件,可以通过修改编译器源代码或使用参数来控制编译器的行为。
3.支持多种编程语言:GCC不仅支持C和C++,还支持其他编程语言,包括Fortran、Objective-C、Java、Ada和Go。
4.可扩展性:GCC是可扩展的,开发者可以添加自己的语言前端或后端,以便将其他语言编译成目标代码或将目标代码转换为其他格式。
GCC安装
GCC通常在Linux系统中预装。如果您的系统没有安装GCC,您可以使用以下命令在Ubuntu系统中进行安装:
“`
sudo apt-get install gcc
“`
GCC的版本可以通过以下命令来检查:
“`
gcc –version
“`
GCC4.9版本的新特性
GCC4.9是GCC的一个重大版本更新,它包含了许多新特性和改进。下面列出一些主要的更新:
1.无法定位的类型:GCC4.9引入了一个新的编译器警告,以防止通过未定义类型来创建对象。
2.增强的C++11支持:GCC4.9包括了许多新的C++11特性支持,包括lambda表达式、变长参数模板、类型别名模板等等。
3.增加了-pedantic-errors选项:该选项会将C++11代码中未定义的警告转换为错误。
4.增加了-pedantic选项:该选项启用了C++标准的严格约束。
5.增加了-fpermissive选项:该选项允许非标准的C++代码通过编译,以保持向后兼容性。
使用GCC编译器
GCC编译器支持多种编程语言,下面将分别针对C和C++展开介绍GCC的使用方法。
1.C语言编译
如果要编译名为”hello.c”的C语言源码文件,您可以使用以下命令:
“`
gcc -o hello hello.c
“`
该命令将生成一个名为”hello”的可执行文件,该文件包含了”hello.c”源码的编译结果。
2.C++编译
以下是一个简单的C++程序,它将在控制台中输出”Hello, World!”。
“`
#include
using namespace std;
int mn() {
cout
return 0;
}
“`
如果要编译名为”hello.cpp”的C++源码文件,您可以使用以下命令:
“`
g++ -o hello hello.cpp
“`
该命令将生成一个名为”hello”的可执行文件,该文件包含了”hello.cpp”源码的编译结果。