银行IT人:Linux和Unix系统下的gcc编译器和makefile文件-1(共20集)
目录:
GNU编译器集合(GCC)是针对C,C ++,Objective-C,Fortran,Ada,Go和D编程语言的编译器和库的集合。 许多开源项目,包括GNU工具和Linux内核,都是使用GCC编译的。
本教程介绍了在Ubuntu 18.04上安装GCC编译器所需的步骤。 我们将向您展示如何安装发行稳定版和最新版本的GCC。
相同的说明适用于Ubuntu 16.04和任何基于Ubuntu的发行版,包括Kubuntu,Linux Mint和Elementary OS。
先决条件
为了能够在Ubuntu系统上添加新存储库并安装软件包,您必须以root或具有sudo特权的用户身份登录。
在Ubuntu上安装GCC
默认的Ubuntu存储库包含一个名为
build-essential
的元软件包,其中包含GCC编译器以及编译软件所需的许多库和其他实用程序。
执行以下步骤来安装GCC编译器Ubuntu 18.04:
-
首先更新软件包列表:
sudo apt update
通过输入以下命令安装
build-essential
软件包:sudo apt install build-essential
该命令将安装一堆新软件包,包括
gcc
,g++
和make
。您可能还需要安装有关使用GNU / Linux进行开发的手册页:
sudo apt-get install manpages-dev
要验证是否成功安装了GCC编译器,请使用
gcc --version
命令显示GCC版本:gcc --version
Ubuntu 18.04存储库中可用的GCC的默认版本是
7.4.0
:gcc (Ubuntu 7.4.0-1ubuntu1~18.04) 7.4.0 Copyright (C) 2017 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
而已。 现在,GCC已安装在您的系统上,您可以开始使用它了。
编译Hello World示例
使用GCC编译基本的C或C ++程序非常容易。 打开您的文本编辑器并创建以下文件:
nano hello.c
你好ç
保存文件,并使用以下命令将其编译为可执行文件: 这将在运行命令的同一目录中创建一个名为
使用以下命令执行
该程序应打印: 本节提供有关如何在Ubuntu 18.04上安装和使用多个版本的GCC的说明。 GCC编译器的较新版本包括对新语言的支持,更好的性能和扩展功能。 在撰写本文时,默认的Ubuntu存储库包括从
在以下示例中,我们将安装最新的三个版本的GCC和G ++。 首先,使用以下命令将
通过键入以下命令安装所需的GCC和G ++版本: 以下命令将为每个版本配置替代版本,并将优先级与之关联。 默认版本是优先级最高的版本,在我们的例子中是
以后,如果您想更改默认版本,请使用
系统将为您提供Ubuntu系统上所有已安装的GCC版本的列表。 输入您要用作默认版本的版本号,然后按
该命令将创建指向GCC和G ++特定版本的符号链接。 您已经在Ubuntu 18.04上成功安装了GCC。 现在,您可以访问GCC官方文档页面,并了解如何使用GCC和G ++编译C和C ++程序。
#include int main() { printf ("Hello World!\n"); return 0; }
#include int main() { printf ("Hello World!\n"); return 0; }
gcc hello.c -o hello
hello
的二进制文件。
hello
程序:
./hello
安装多个GCC版本
5.xx
到
8.xx
多个GCC版本。 可以从Ubuntu Toolchain PPA获得最新版本的GCC,即
9.1.0
。
ubuntu-toolchain-r/test
PPA添加到您的系统:
sudo apt install software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt install gcc-7 g++-7 gcc-8 g++-8 gcc-9 g++-9
gcc-9
。
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90 --slave /usr/bin/g++ g++ /usr/bin/g++-9 --slave /usr/bin/gcov gcov /usr/bin/gcov-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 80 --slave /usr/bin/g++ g++ /usr/bin/g++-8 --slave /usr/bin/gcov gcov /usr/bin/gcov-8
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 70 --slave /usr/bin/g++ g++ /usr/bin/g++-7 --slave /usr/bin/gcov gcov /usr/bin/gcov-7
update-alternatives
命令:
sudo update-alternatives --config gcc
There are 3 choices for the alternative gcc (providing /usr/bin/gcc). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/gcc-9 90 auto mode 1 /usr/bin/gcc-7 70 manual mode 2 /usr/bin/gcc-8 80 manual mode 3 /usr/bin/gcc-9 90 manual mode Press to keep the current choice, or type selection number:
There are 3 choices for the alternative gcc (providing /usr/bin/gcc). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/gcc-9 90 auto mode 1 /usr/bin/gcc-7 70 manual mode 2 /usr/bin/gcc-8 80 manual mode 3 /usr/bin/gcc-9 90 manual mode Press to keep the current choice, or type selection number:
Enter
。结论
如何在Ubuntu Linux中安装最新的Firefox 3.6.6
Firefox 3.6.6具有浏览器防崩功能。下面介绍如何在Ubuntu Linux中轻松安装它。
如何在Ubuntu 18.04上添加交换空间
交换是物理RAM内存已满时使用的磁盘空间。 当Linux系统的RAM用完时,非活动页面将从RAM移动到交换空间。 本教程介绍了将交换文件添加到Ubuntu 18.04所需的步骤。
如何在Ubuntu Linux中更改root密码
本教程说明了如何临时更改root用户帐户,以及如何在Ubuntu系统上设置root密码。 root用户(或超级用户)是在所有类似Linux和Unix的系统上都存在的特殊用户帐户。