如何在 Linux 上安装 C 和 GCC 编译器?

这篇具有很好参考价值的文章主要介绍了如何在 Linux 上安装 C 和 GCC 编译器?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

linux怎么安装编译器,编程,C语言教程,linux,c语言

概述

Linux 是一组开源的类 UNIX 操作系统,Ubuntu 是一种基于 Linux 的操作系统,通常用于运行基于 Linux 的应用程序。要在 Linux 上安装 C 并在 Ubuntu 上构建和运行 C 程序文件,我们需要安装 GCC 编译器。在 Ubuntu 存储库中,GCC 编译器是我们需要安装的构建基本包的一部分。

我们知道在 Linux 上安装 C 语言可能看起来令人生畏,但不要担心;我们已经为您提供了分步指南!

在 Linux 中使用终端安装 GCC 编译器

GCC编译器(GNU编译器集合)是用C,C++,Ada,GO,D,Fortran和Objective-C编程语言编写的程序的编译器和库的集合它是在GNU通用公共许可证下分发的。我们将使用 Linux 终端安装 GCC 编译器,以在 Linux 上安装 C。

GCC 编译器以及构建应用程序所需的其他几个库和实用程序可以在默认的 Ubuntu 存储库(Ubuntu 是基于 Linux 的操作系统)的 build-essential 元包下找到。

什么是构建必备包?

Ubuntu 上的这个构建必不可少的元包带有五个单独的包,这些包在软件编译过程中需要,它包含将用于构建和运行 C 程序的 GCC 编译器。下面列出了这五个软件包:

  • gcc:GNU 编译器集合(GCC Compiler)用于编译用 C 语言编写的程序。
  • g++:GNU C++编译器用于编译用C++语言编写的程序。
  • libc6-dev:这是 GNU 库文件包。编译简单 C 和 C++ 程序所需的开发库和头文件都包含在此包中。
  • make:这是一个方便的工具,用于控制程序的编译。该工具读取一个名为“makefile”的文件,该文件告诉编译器如何完成其工作。
  • dpkg-dev:这个软件包可以用来解压、编译和上传 Debian 源码包。如果你想为一个基于Debian的系统打包你的程序,这个工具会派上用场。

因此,我们必须执行以下步骤才能在我们的 Linux 操作系统中安装 build-essential 软件包:

首先,我们必须打开终端;我们可以使用快捷键 Ctrl + Alt + T,也可以通过在菜单中搜索来手动打开它(⋮⋮⋮图标)。

1. 首先,使用以下命令更新软件包列表:

$ sudo apt update

Linux 中的 apt 命令负责在我们的系统上安装、卸载和更新应用程序。将您的计算机视为工厂,将 apt 命令视为工厂经理,负责管理新设备的安装、移除过时的设备以及将所需设备更新到最新版本,同时跟踪当前正在使用的设备名称和版本。因此,sudo apt update 命令用于更新软件版本的跟踪,以帮助在系统中安装最新的可用软件版本。

注意:

sudo(超级用户 DO)允许用户以超级用户或其他用户的身份运行命令,具体取决于安全策略。因此,如果需要,请输入您的系统密码以继续。

输出:

scaler@scaler-topics:~$ sudo apt update
[sudo] password for scaler:
Hit:1 http://in.archive.ubuntu.com/ubuntu focal InRelease
Get:2 http://in.archive.ubuntu.com/ubuntu focal updates InRelease [114 kB] 
Get:3 http://tn.archive.ubuntu.com/ubuntu focal backports InRelease [108 kB] 
Get:4 http://security.ubuntu.com/ubuntu focal-securtty InRelease [114 kB] 
Get:5 http://in.archive.ubuntu.com/ubuntu focal updates/main amd64 Packages [1, 468 kB]
Get:6 http://in.archive.ubuntu.com/ubuntu focal-updates/matn 1386 Packages [585 kB]
Get:7 http://in.archive.ubuntu.com/ubuntu focal-updates/main Translation-en [291 kB]
Get:8 http://in.archive.ubuntu.com/ubuntu focal updates/main amd64 DEP-11 Metadata [279 kB]
Get:9 http://in.archive.ubuntu.com/ubuntu focal-updates/main DEP-11 48x48 Icons [60.8 kB]
Get:10 http://in.archive.ubuntu.com/ubuntu focal-updates/main DEP-11 64x64 Icon s [98.3 kB]
Get:11 http://tn.archive.ubuntu.com/ubuntu focal-updates/main amd64 c-n-f Metad ata [14.7 kB]
Get:12 http://in.archive.ubuntu.com/ubuntu focal-updates/restricted amd64 Packa ges [694 kB]
Get:13 http://tn.archive.ubuntu.com/ubuntu focal-updates/restricted Translation -en [99.0 kB] 
Get:14 http://tn.archive.ubuntu.com/ubuntu focal-updates/untverse 1386 Packages [663 kB]
Get:15 http://in.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Package s [892 kB]
Get:16 http://tn.archive.ubuntu.com/ubuntu focal-updates/universe Translation-e n [196 kB]
...

2. 使用以下命令安装软件包 build-essential

$ sudo apt install build-essential

如果需要,请输入您的系统密码以继续。

输出:

scaler@scaler-topics:~$ sudo apt install build-essential
[sudo] password for scaler:
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  binutils binutils-common binutils-x86-64-linux-gnu dpkg-dev fakeroot g++ g++-9 gcc
  gcc-9 libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl
  libasan5 libatomic1 libbinutils libc-dev-bin libc6-dev libcrypt-dev libctf-nobfd0
  libctf0 libfakeroot libgcc-9-dev libitm1 liblsan0 libquadmath0 libstdc++-9-dev
  libtsan0 libubsan1 linux-libc-dev make manpages-dev
Suggested packages:
  binutils-doc debian-keyring g++-multilib g++-9-multilib gcc-9-doc gcc-multilib
  autoconf automake libtool flex bison gcc-doc gcc-9-multilib gcc-9-locales glibc-doc
  libstdc++-9-doc make-doc
The following NEW packages will be installed:
  binutils binutils-common binutils-x86-64-linux-gnu build-essential dpkg-dev
  fakeroot g++ g++-9 gcc gcc-9 libalgorithm-diff-perl libalgorithm-diff-xs-perl
  libalgorithm-merge-perl libasan5 libatomic1 libbinutils libc-dev-bin libc6-dev
  libcrypt-dev libctf-nobfd0 libctf0 libfakeroot libgcc-9-dev libitm1 liblsan0
  libquadmath0 libstdc++-9-dev libtsan0 libubsan1 linux-libc-dev make manpages-dev
0 upgraded, 32 newly installed, 0 to remove and 259 not upgraded.
Need to get 3518 kB/34.4 MB of archives.
After this operation, 157 MB of additional disk space will be used.
Do you want to continue? [Y/n]

按 Y 键,然后在屏幕上获得与上述类似的输出后按 Enter 键以继续安装过程。

完全安装构建必不可少的元包需要 3-5 分钟。此过程将在 Linux 操作系统上安装 C,我们可以使用 GCC 编译器来编译和运行我们的 C 程序。

祝贺!现在,您已经在 Linux 中完成了 build-essential 软件包和 GCC 编译器 (C 语言) 的安装。

注意:

在本教程中, 我们使用的是 Ubuntu 20.04 LTS 版本。此版本的 Ubuntu 带有预装的 GCC 编译器版本,因此您可以先使用下一节中提到的命令检查已安装的编译器版本。

适用于 Red Hat Linux / Fedora / CentOS

Red Hat Linux、Fedora 或 CentOS 中没有 build-essentials 软件包,但我们可以通过软件开发所需的这些操作系统中的类似软件包在 Linux 上安装 C。因此,如果您使用的是基于 Red Hat Linux / Fedora / CentOS 的 Linux 操作系统,那么您必须安装开发工具包才能在您的系统中获取 GCC 编译器

1. 首先以 root 用户身份使用以下命令更新软件包列表:

# yum update

2. 以 root 用户身份使用以下命令安装开发工具

# yum groupinstall 'Development Tools'

$ sudo yum group install "Development Tools"

检查已安装的编译器版本

现在你已经安装了build-essentials/Development Tools软件包,你可以很容易地检查/验证你的GCC编译器版本。在本节中,您将了解如何在 Linux 终端中使用以下命令检查/验证已安装的 GCC 编译器版本:

$ gcc --version

注意:

gcc 命令下的 --version 标志兼容 Linux 中几乎所有的终端开发软件。

输出:

scaler@scaler-topics:~$ gcc --version
gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Copyright (C) 2019 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.

如果您在屏幕上看到类似于上面显示的输出,那么您就可以开始了。

注意:

如果输出类似于下面的输出,则在安装过程中存在一些差异。重复上述步骤以再次安装 build-essential 软件包。

scaler@scaler-topics:~$ gcc --version

Command 'gcc' not found, but can be installed with:

sudo apt install gcc

创建 C 程序

在本节中,您将使用预安装的文本编辑器在 Linux 上创建一个简单的 C 程序。

有许多 Linux 终端命令可以创建新文件,例如使用 touch、>(重定向运算符)、cat、echo 命令或终端编辑器(如 vi、vim 或 nano)。在本教程中,我们在终端中使用 touch 命令来创建一个空的 C 程序文件。在创建新文件之前,您还可以将终端的目录更改为系统中的任何所需位置。在本教程中,我们选择了 Desktop 目录。您可以使用 cd Desktop(将目录更改为 Desktop)命令切换到 Desktop 目录,也可以选择您选择的任何目录,只需在 cd 命令后传递目录的位置地址即可。您必须确保 C 程序文件编译在与 C 程序文件所在的目录相同的目录中。

让我们看看它在 Ubuntu 20.04 操作系统中的实际效果。

步骤1:在终端中触摸hello.c命令,在桌面目录下创建一个空的hello.c C程序文件。

linux怎么安装编译器,编程,C语言教程,linux,c语言

步骤2:在 Linux 的内置文本编辑器中打开 hello.c 文件(或者您可以使用您选择的任何编辑器,如 Sublime Text 或 Visual Studio Code),然后在编辑器中键入 Hello World C 程序,如下所示。

世界您好C语言程序

// C Program to print Hello, World! in the output
#include<stdio.h>

int main()
{
    // printf function is used to print the string argument in the output window
    printf("Hello, World!\n");
    
    return 0;
}

输出:

Hello, World!

linux怎么安装编译器,编程,C语言教程,linux,c语言

祝贺!您现在距离在 Linux 操作系统下编译 C 程序只有一步之遥。至此,您已经通过终端创建了一个新文件 hello.c,并在内置的文本编辑器中成功编写了 Hello World 程序。

现在让我们看看如何在 Linux 终端中编译上面的 C 程序文件。

使用 GCC 编译器编译和执行 C 程序

要编译我们的 C 程序文件,我们可以在终端中使用以下命令(在 hello.c 文件所在的同一目录中使用此命令):

$ gcc hello.c -o hello

上面的命令将生成一个带有 hello 的可执行文件,如命令中 -o 后给出的那样。我们可以为可执行文件命名任何名称。我们不需要给出与 C 程序文件相同的名称。

注意:

我们还必须确保在 hello.c 文件所在的同一目录中使用上述命令。

现在要运行这个可执行文件,我们只需要运行以下命令,C 程序的输出将显示在终端屏幕上。

$ ./hello

如果您编写了与上一节中提到的相同的 C 程序,则此命令将在终端上给出 Hello, World! 输出。

注意:

在存在 hello 可执行文件的同一目录中使用此命令。

让我们看看它在 Ubuntu 20.04 操作系统中的实际效果。

步骤1:使用 gcc hello.c -o hello 命令编译 hello.c 程序并生成 hello 可执行文件。从图中我们可以看出,在 Desktop 目录中创建了一个 hello 文件。

linux怎么安装编译器,编程,C语言教程,linux,c语言

步骤2:要运行可执行文件,只需输入 ./hello 命令,输出就会显示在终端屏幕上,如下图所示。

注意:

在存在 hello 可执行文件的同一目录中使用此命令。例如,我们在 Desktop 目录下编译和执行我们的程序文件。

如果您编写了与上一节中提到的相同的 C 程序,则此命令将在终端上给出 Hello, World! 输出。

linux怎么安装编译器,编程,C语言教程,linux,c语言

恭喜:您已经完成了Linux操作系统下C程序的编译和运行过程。文章来源地址https://www.toymoban.com/news/detail-850374.html

结论

  • 我们学习了如何在 Linux 上安装 C。
  • 我们需要安装 build-essential/Development Tools 软件包才能在 Linux 上安装 C 并获取 GCC 编译器。
  • build-essential 元包自带五个独立的包,分别是 gccg++libc6-devmake 和 dpkg-dev
  • GCC 编译器用于在 Linux 操作系统上编译运行 C 程序。
  • 我们可以使用内置文本编辑器或其他编辑器(如 Visual Studio Code 或 Sublime Text)来编写我们的 C 程序。 

到了这里,关于如何在 Linux 上安装 C 和 GCC 编译器?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux GCC常用命令以及GCC编译器

    GCC 是编译工具,它的意思是 GNU C Compiler 。经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言等等。而 GCC 也不再单只是 GNU C 语言编译器的意

    2024年02月05日
    浏览(35)
  • Linux——gcc/g++编译器

    目录 I.Linux编译器 1.gcc/g++编译器 在C代码生成可执行程序的过程中,会有四个过程: 1预处理,2编译,3汇编,4链接 Linux对.c文件分辨进行预处理,编译,汇编三大步指令: 预处理指令: 编译指令: 汇编指令: 接下来说一说链接过程: II.动静态链接  一.动态链接 二.静态链接

    2024年02月04日
    浏览(39)
  • Linux编译器gcc/g++

    以gcc编译 以g++编译,但是此时会发现没有g++这个指令,所有需要安装它,安装指令 yum install gcc gcc-c++ gcc和g++都会形成可执行文件a.out gcc只能编译c语言代码,g++能编译c/c++ 以c程序为例,来看看它从一个文本类的c程序编译成计算机可以认识的二进制程序它需要经过四个阶段 预

    2024年02月10日
    浏览(33)
  • 【Linux】编译器-gcc/g++使用

    个人主页 : zxctscl 文章封面来自:艺术家–贤海林 如有转载请先通知 在之前已经分享了 【Linux】vim的使用,这次来看看在云服务器上的编译器gcc。 我们先写一段简单的代码: 当我们进行编译的时候: 发现根本就编译不了。 这个是因为编译器版本的问题: 查看编译器的版

    2024年03月11日
    浏览(115)
  • Linux--编译器-gcc/g++使用

    目录 前言 1.看一段样例  2.程序的翻译过程 1.第一个阶段:预处理 2.第二个阶段:编译 3.第三个阶段:汇编 4.第四个阶段:链接 3.程序的编译为什么是这个样子? 4. 关于编译器 5.链接(动静态链接) 1.首先,我们来看一段样例(见一下) 2.见完之后,我们来看一下程序的翻译

    2024年02月20日
    浏览(49)
  • Linux编译器 gcc与g++

    程序的编译过程: 1、 预处理 (头文件包含、消除注释、宏定义替换) 2、 编译 (将语言替换成汇编代码) 3、 汇编 (将汇编指令转换为二进制指令) 4、 链接 (合并段表、符号表合并及重定位) 我们可以通过gcc工具实现程序的编译过程: 2.1 预处理 预处理会完成:①头

    2023年04月18日
    浏览(63)
  • 【Linux】03 GCC编译器的使用

     在使用gcc编译程序时,编译过程可以简要划分为4个阶段:         预处理、编译、汇编、链接 这个阶段主要处理源文件中的#indef、#include和#define预处理命令; 这里主要是把一些include的头文件和一些宏定义,放到源文件中。 编译命令: gcc  -E  -o  hello.i  hello.c 将经过预处

    2024年01月20日
    浏览(38)
  • Linux编译器——gcc/g++使用

    前言:  在上一篇,我们学习了关于文本编辑器 vim 的全部知识,今天给大家带来的是关于Linux编译器—gcc/使用的详细介绍。 本文目录  (一)温习程序的产生的过程 1、前言 2、程序的产生过程 3、🌜初步认识 gcc🌛 a) gcc的基本概念 b)gcc的基本特点 4、使用方法💻 (二)

    2023年04月17日
    浏览(39)
  • Linux的学习之路:6、Linux编译器-gcc/g++使用

    本文主要是说一些gcc的使用,g++和gcc使用一样就没有特殊讲述。 目录 摘要 一、背景知识 二、gcc如何完成 1、预处理(进行宏替换) 2、编译(生成汇编) 3、汇编(生成机器可识别代码 4、链接(生成可执行文件或库文件) 5、函数库 6、静态库和动态库 7、gcc选项 三、思维导图

    2024年04月23日
    浏览(38)
  • Linux的编译器——gcc/g++(预处理、编译、汇编、链接)

    前言: 本文主要认识与学习 Linux 环境下常用的编译器—— gcc (编译 C 代码)/ g++ (编译 C++ 代码)的常用指令等、程序实现的两大环境、动态库与静态库的理解等。 任何一个 C 程序的实现都要经过 翻译环境 与 执行环境 。 在翻译环境中又分为4个部分, 预编译、编译、汇

    2024年02月13日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包