linux——gcc学习

一、前言:

    GNU CC(通常称为GCC)是GNU项目的编译器,它能够编译C、C++语言编写的程序。
    gcc是Linux开发的基础,gcc能够支持多种不同的C语言版本,同时提供Linux、Unix、Windows下的编译版本。
    目前Windows下C/C++主要的编译器有Borland C++、VC++,但由于gcc是免费的,同时对代码的兼容性做的更加出色,所以在windows的C/C++编译器市场gcc的份额也越来越大。

二、入门:

1、编译的3个阶段:

使用gcc,程序员可以对编译过程有更多的控制,编译过程分为3个阶段。

①预处理;
②汇编;
③链接。

程序员可以再编译的任何阶段结束后停止整个编译过程以检查编译器在该阶段输出的信息。

2、特点:
①使用gcc,程序员可以控制生成二进制执行文件中调试代码的数量和类型。
②和其他编译器一样,gcc也可以优化执行代码。
③gcc是个交叉平台编译器,所以能够在当前CPU平台上为不同操作系统开发软件。
④gcc对C和C++进行了一些扩展,有助于提高执行效率以及编译器进行代码优化。
⑤gcc可以让跨平台编程更加容易,降低代码移植代价。

深入了解gcc之前,我们先看一个小例子。

#include <stdio.h>
int main(int arg, char *args[])
{
    if (arg < 3)
        printf("请输入2个参数\n");
    else
    {
        int a = atoi(args[1]);
        int b = atoi(args[2]);
        printf("%d%d 等于 %d\n", a, b, a + b);
    }
    return 0;
}

在命令行键入命令编译和运行这段程序

$gcc -o hello hello.c

这行命令告诉gcc对源程序hello.c进行编译和链接,并使用参数-o指定创建名为hello的可执行程序。
整个过程看上去仿佛是一气呵成的,但其实是分几步的:

①预编译源代码;
②编译目标代码;
③链接程序。

这里写图片描述

①预编译:

在命令行键入命令。
$gcc -o hello1.c -E hello.c
这行命令告诉gcc对源程序hello.c进行预编译,预编译结果输出到hello1.c文件中。

②编译:

在命令行键入命令。
$gcc -o hello.o -c hello1.c
这行命令告诉gcc对源程序hello.c进行编译,但不链接,编译输出到hello.o文件中。

③链接:

在命令行键入命令。
$gcc -o hello hello.o
这行命令告诉gcc对源程序hello.o进行链接,生成可执行程序hello。

三、进阶:

1、gcc常用选项
-o filename:输出文件名,如果没指定filename,默认为a.out
-c:         只编译,不链接
-E:         预编译
-S:         汇编
-g:         包含调试信息
-I:         指定包含头文件路径
-D:         编译时定义指定的宏,相当于源代码中的#define宏定义
-L:         指定要链接库文件的路径
-l:         链接指定的库文件
-O:         优化编译后的代码
-w:         关闭所有告警信息
-Wall:      开启所有告警信息
-WerrorWarning当做错误处理
-static:    强制链接时链接静态库
-fPIC:      编译与位置无关的代码,主要用于编译共享库
-shared:    生成共享库so文件
-pedantic:  发现一些不符合 ANSI/ISO C标准的代码
2、文件类型

Q:gcc是如何知道文件类型呢?
A“通过文件扩展名判断文件类型

c:      C语言源文件
cpp:    C++源文件
s:      汇编语言源文件
o:      编译后的目标代码文件
a,so:   编译后的库文件
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux开发板上下载和安装GCC编译器,你可以按照以下步骤进行操作: 1. 首先,确保你的Linux开发板已经连接到互联网,并且拥有合适的权限来执行安装命令。 2. 打开终端,并使用以下命令下载和安装GCC编译器: ``` sudo apt-get update sudo apt-get install gcc ``` 3. 上述命令将会从互联网上下载并安装GCC编译器及其依赖项。 4. 安装完成后,你可以使用以下命令来验证GCC的安装情况和版本: ``` gcc -v ``` 这将显示GCC的版本信息。 通过上述步骤,你可以在Linux开发板上成功下载和安装GCC编译器。请注意,根据你的Linux发行版和开发板的不同,可能会有一些细微的差异。因此,建议你在具体的开发板和发行版的文档或论坛中查找更详细的安装指南。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [4、linux初级——Linux在开发板中的使用](https://blog.csdn.net/weixin_45981798/article/details/129715039)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [迅为龙芯2K1000开发板Linuxgcc编译](https://blog.csdn.net/mucheni/article/details/125292020)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值