专业的编程技术博客社区

网站首页 > 博客文章 正文

Ubuntu中使用gcc/g++编译C/C++(ubuntu用gcc编译并执行)

baijin 2024-09-12 11:05:59 博客文章 10 ℃ 0 评论

对于习惯了使用windows进行开发的朋友们,如果想要编译C语言,只要要在windows中安装一个可以编译的IDE即可。或者直接自己加载编译的工具链,使用Cmd命令行也可以完成C语言的编译。

但是如果想要在linux环境中编译C语言,安装编译工具也是一样可以对C语言进行编译的。还可以把在windows中编写的C语言代码拿到linux中去编译。

本文分享ubuntu中安装gcc编译器,并用gcc编译器编译C语言。


1、 安装gcc编译器

在ubuntu中安装gcc可以使用 sudo apt install gcc 进行安装,如下指令:

sudo apt install gcc

安装过程如下:

由于我之前已经安装过gcc了,所以在此执行 sudo apt install gcc 时就会检查gcc更新,如果有最新的版本会更新为最新版本,不然的话会列出当前所安装的gcc的版本信息。


2、 gcc编译器常用的操作选项

gcc编译器的使用格式最简单的操作:

gcc [选项1] [选项2] [选项3] ...

用在C语言编译上常用的选项有以下几个,这里做简要说明,如果要了解详细的使用方法和介绍的话,可以查看man手册,用 man gcc 查看。


2.1、常用选项

gcc常用的选项有几个,也是需要我们重点关注的,如下:

(1)-o 选项:可以指定编译后输出的可执行文件的名称。
如:helloworld.c 编译后指定输出文件名为test,使用方式如下:
    gcc -o test helloworld.c

(2)-c 选项:只编译C语言代码,不进行汇编连接。
    如 gcc -c helloworld.c 会产生一个叫 helloworld.o 的目标文件。

(3)-S 选项,编译并产生汇编源文件。
    如 gcc -S helloworld.c 会产生一个 helloworld.s 的汇编源文件。

(4)-E 选项,只对C源文件进行预处理。
    如 gcc -E helloworld.c 只对C源文件中的宏和预处理进行展开,不编译C源文件。
    

如果要编译C语言文件,最简单的方式就是:

gcc 源文件

注意:使用这个方式直接编译的c源文件会默认生成 a.out 的可执行文件。


2.2、gcc使用的简单演示

(1) 新建一个名为 helloWorld.c 的C语言文件,如下:


(2) 打开 helloWorld.c 并写入一些简单的测试代码,如下:


(3) 使用 gcc helloWorld.c 编译,会在当前目录的路径下生成一个 a.out的文件,如下:


(4) 在命令行中使用 ./a.out 直接运行这个文件,会执行C语言中代码,并输出结果,如下:



到此,gcc的基本使用就介绍完了!如果想知道更多的使用,可以用 man gcc 查阅使用手册!


3、 安装g++编译器

在Ubuntu命令行中输入指令安装g++编译器,如下:

sudo apt install g++

如下的安装演示:

安装完成之后会显示当前安装的g++编译器的版本信息,如上图。


3.1、g++常用选项

g++常用的选项如下:

(1)-o :可以指定输出文件名,在编译为目标代码时,这一选项不是可以忽略的。如果没有指定输出文件名,缺省文件名是a.out。

(2)-c:只编译生成目标文件,不链接。

(3)-E:只运行 C 预编译器。

(4)-S:编译并产生汇编源文件。

这些常用选项和gcc是一样的。


3.2、gcc/g++常见的优化等级

常见的优化等级如下:

-O:优化编译过的代码
-ON:指定代码优化的级别为N,o<=N<=3

-O0:不进行优化处理。
-O 或 -O1:优化生成代码。
-O2:进一步优化。
-O3:比 -O2 更进一步优化,包括 inline 函数。



作者简介:

本人95后技术男,从事嵌入式软件开发,专注于技术成长和技术分享。目标是每天进一步一点点,通过技术改变自己的生活,创造自己的美好未来!如果你也对嵌入式感兴趣,欢迎关注我呀!


声明:

本文作者:嵌入式之入坑笔记

文章版权归作者所有,转载请注明出处!

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表