大多数Linux系统管理员和工程师需要知道一些基本编程,以帮助他们完成日常任务。 如果他们想更进一步进入开发领域,以及(或者作为内核或应用程序员),那么C或C ++是最好的地方开始。
安装C,C ++编译器和构建必备工具
另请阅读 : 在RHEL / CentOS的/ Fedora的安装C,C ++和开发工具
在这篇文章中,我们将介绍如何安装C和C ++编译器,它的开发工具 ( 建立必要的 )相关的软件包,如化妆,的libc-dev的话,dpkg-dev的,等在Debian和衍生物,如Ubuntu和Linux Mint的 。
构建必要的软件包含软件这被视为重要的建设Debian软件包包括gcc编译器,使和其他所需的工具的信息列表。
什么是编译器?
简单来说,编译器是一个软件程序,它处理用编程语言编写的指令,并创建一个二进制文件,机器的CPU可以理解和执行。
在基于Debian的发行版,其中最知名的C和C ++编译器分别为gcc和g ++。 这两个程序进行了开发和由自由软件基金会通过GNU项目仍然保持着。
安装C,C ++编译器和开发工具(build-essential)
如果您的系统没有安装在您的系统默认的build-essential包,可以如下安装从默认分配库最新版本:
# apt-get update && apt-get install build-essential OR $ sudo get update && apt-get install build-essential
现在,我们已经准备好开始键入C或C ++代码...或差不多。 我们即将向您展示另一个工具来提升您的开发工具集。
加速C和C ++编译
当你知道你需要编译程序,进行更改,然后重新编译它再次是伟大的,有这样的ccache的工具,正如你可能会根据它的名字猜测,是一个编译器缓存。
它通过缓存以前的编译和检测何时再次执行相同的编译来加速重新编译。 除了C和C ++,它也支持的Objective-C和Objective-C ++。 唯一的限制是:
- 只支持缓存单个C / C ++ / Objective-C / Objective-C ++文件的编译。 对于其他类型的编译(多文件编译,链接,仅举几个例子),该过程将结束运行真正的编译器。
- 某些编译器标志可能不受支持。 如果检测到这样的标志,ccache将静默地回退到运行真正的编译器。
让我们来安装这个工具:
# aptitude install ccache
在Debian中安装CCache
在下一节中,我们将看到一些有和没有ccache的C和C ++代码编译的例子。
用示例程序测试C和C ++
让我们使用一个非常基本的C程序的经典例子,添加两个数字。 打开你喜欢的文本编辑器并输入以下代码,然后另存为sum.c
:
#include<stdio.h> int main() { int a, b, c; printf("Enter two numbers to add, separated by a space: "); scanf("%d%d",&a,&b); c = a + b; printf("The sum of equals %d\n",c); return 0; }
要编译上面的代码为可执行的命名总和当前工作目录使用用gcc -o开关:
# gcc sum.c -o sum
如果你想利用的ccache的,只是前面加上ccache的上述命令,如下所示:
# ccache gcc sum.c -o sum
然后运行二进制:
# ./sum
在Debian中编译C ++程序
虽然这个基本的例子不允许我们看到ccache的全部功能,对于更大的程序,你会很快意识到一个伟大的工具。 这同样适用于C ++程序。
概要
在本指南中,我们已经展示了如何安装和使用Debian中的C和C ++的GNU编译器及其衍生工具。 此外,我们解释了如何使用编译器缓存来加速同一代码的重新编译。 虽然您可以参考gcc和g ++的在线手册页获得更多选项和示例,但不要犹豫,使用下面的表格给我们留言如果您有任何问题或意见。