怎样在 Linux 上使用 G++ 编译器

编译过程是任何 C++ 编码项目的重要组成部分。 您需要一个高效且简单的编译器,同时还提供多种功能。 这就是 g++ 编译器的用武之地。它直接从命令行为您的编译需求提供各种功能。 在这里,我们向您展示怎样开始使用这个出色的工具。

内容

什么是 g++?

最好将 G++ 描述为从命令行运行的 C++ 编译器。 它由自由软件基金会发布,是 GCC(GNU 编译器集合)的一部分。 它将以高级编程语言(在本例中为 C++)编写的代码转换为计算机可以理解的低级语言,从而将其转换为可执行文件。

安装

大多数 Linux 安装都带有直接安装的 g++。 但是,如果您选择的发行版没有,请按照此处并了解怎样在一些最常见的 Linux 发行版上安装它。

在 Ubuntu 和 Debian 上,使用 apt 包管理器:

在 Fedora 和 CentOS,使用 yum 包管理器:

您也可以从以下位置下载它作为一个包 pkgs.org. 这可以使用卷曲工具来完成:

您可以使用安装包 dpkg 效用:

要检查是否安装了 g++,请使用 --version 旗帜:

基本用法

现在 g++ 已安装,您可以开始使用它来满足您的编译需求。

首先,通过使用 --help 旗帜:

有时查看有关编译器及其设置的额外信息很有用。 您可以通过使用显示编译器的内置规范字符串 --dumpspecs 旗帜:

这将为您提供有关其功能和不同选项的基本概述。

要使用 g++ 执行基本编译,请使用以下格式:

如果我们有一个名为“main.cpp”的文件,对于 example,我们可以通过键入以下内容来编译它:

编译后的可执行文件默认命名为“a.out”。

通过键入以下内容运行它:

如果要指定编译的可执行文件的名称,请使用 -o 旗帜:

假设您要将可执行文件的名称指定为“main”。 您将键入以下内容:

Gplusplus编译结果

如果要将目标文件链接在一起,请使用以下格式:

如果,对于 example,您想将目标文件“object-1.o”和“object-2.o”编译成“主”可执行文件,您可以输入以下内容:

如果要指定可以找到库和头文件的根目录,请使用 --sysroot 旗帜:

使用“-Wall”显示警告信息

有时,编译器在编译代码时显示所有警告消息很有用。 幸运的是,g++ 内置了这个功能并且可以使用。

要显示所有警告消息,请使用 -Wall 标志(请注意大写的“W”):

创建静态库

创建库与选择正确的代码编辑器一样重要。 通过一些技巧,例如 ar 命令,您可以使用 g++ 轻松编译库。

首先编译一个目标文件:

接下来,使用 ar 带有“rcs”的实用程序来创建存档(“.a”)文件:

最后,将它与 g++ 一起使用:

经常问的问题

1.我可以用这个工具编译.c文件吗?

从技术上讲,你可以。 然而 gcc 实用程序更适合这个,因为 g++ 主要是一个 C++ 编译器。 此外,g++ 无论怎样都会将 .c 文件视为 C++ 文件。

如果要使用 g++ 编译 .c 文件,只需使用 -c 旗帜:

Gplusplus C编译

2. 为什么我不应该只使用 GCC 作为 C++ 编译器?

你可以很好地使用 gcc 作为 C++ 编译器。 但是,g++实际上是对 gcc 更专注于 C++。 因此,它为使用 C++ 代码的程序员提供了一些额外的功能和特性。

3. 最新版本是什么?

截至 2022 年第一季度,g++ 的最新版本似乎是 11.2.0。它于 2021 年 7 月发布。

永远不要错过

接收我们最新教程的更新。

注册所有时事通讯。 我想通过电子邮件接收时事通讯。 我们不会共享您的数据,您可以随时取消订阅。 订阅