Linux系统下可执行程序的编译、组装过程

本文详细介绍了在Linux环境下如何使用gcc编译器创建静态库和动态库,包括从源程序准备到编译成.o文件,再到静态库与动态库的创建与使用。此外,还提供了在程序中链接和使用这些库的实例,并对比了静态库与动态库在程序大小上的差异。
摘要由CSDN通过智能技术生成

一. 用gcc生成静态库和动态库源程序准备

1.1 概念

我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行时才被载入,因此在程序运行时还需要动态库的存在。

1.2 编辑生成例子程序

在终端执行以下命令,创建一个目录文件

mkdir test1
cd test1

在这里插入图片描述
使用vim编辑器,编写3个c语言文件

注:若没有安装 vim编辑器,可以输入命令:sudo apt install vim 进行安装。

运行命令vi hello.h
代码如下:

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

注意:进入vim,开始编辑需要点击键盘“i”,编辑完成后,按键盘“Esc”,再输入“:wq”,表示退出并保存。

运行命令vi hello.c
代码如下:

#include <stdio.h> 
void hello(const char *name) 
{
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值