Linux下的gcc编译器

本文详细介绍了Linux下gcc编译器的使用,包括如何组装可执行程序、生成静态库与动态库的步骤,以及gcc编译工具的介绍。还涉及到as汇编编译器的使用,如创建和运行汇编程序,以及对BBS终端程序的体验。此外,文章讨论了静态库与动态库的文件大小差异,并给出了实际操作示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux下的gcc编译器

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、组装可执行程序

gcc作为一个一个后台程序的包装,它会根据阶段要求来调用 cpp、cc、as、ld 等命令。
gcc的编译流程中通常认为如下四个步骤:
1.预处理,生成预编译文件(.i文件):gcc –E main.c –o main.i
2.编译,生成汇编代码(.s文件):gcc –S main.i –o main.s
3.汇编,生成目标文件(.o文件):gcc –c main.s –o main.o
4.链接,生成可执行文件(executable文件):gcc main.o –o main

我们可以看成把命令分成4步执行

二、gcc生成静态库与动态库

1.编辑生成程序

①.创建作业目录并进入该目录:

#mkdir test1
#cd test1
在这里插入图片描述
②.创建文件hello.h、hello.c、main.c
下面是hello.h创建
在这里插入图片描述

③.用vim、nano或 gedit等文本编辑器编辑生成所需要的3个文件。

hello.h代码如下:

#ifndef HELLO_H
#define HELLO_H
void hello(const char*name);
#endif//HELLO_H

hello.c代码如下

#include <stdio.h>
void hello(const char *name)
{
   
printf("Hello %s!\n", name);
}

main.c代码如下

#include"hello.h"
int main()
{
   
hello("everyone");
return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值