文档章节

GCC编译静态库及动态库

明天以后
 明天以后
发布于 2017/09/01 10:34
字数 143
阅读 23
收藏 0

将文件编译为静态库.a

# 将cJSON.c编译为cJSON.o, -c只编译不连接
➜ gcc -c cJSON.c 

# 组合为静态链接库. 使用cJSON.o创建静态库libcJSON.a
➜ ar -r libcJSON.a cJSON.o 

# 将静态库作为一个系统共享的静态链接库(lib文件夹)
➜ cp libcJSON.a /usr/local/lib

# 此时就可以使用 -l 参数去使用静态库了.
➜ gcc main.c -o main -lcJSON 

将文件编译为动态链接库.so

# 编译动态链接库
# # -fPIC: Position-Independent Code 生成位置无关的代码
➜ gcc -fPIC -shared -o main.so main.c

© 著作权归作者所有

共有 人打赏支持
上一篇: C语言共享内存
下一篇: Jinja2初探
明天以后
粉丝 72
博文 124
码字总数 82816
作品 0
昌平
程序员
私信 提问
C语言库的制作

制作C语言库 编写头文件,在文件内声明要用到的函数, libh.h #include <stdio.h> // 两数相加 int add(int a, int b); // 绝对值 int mabs(int a); 编写c语言库源码文件, 在文件内定义之前...

首席撸起水泡
2016/01/08
71
0
gcc下如何主动创建并使用自己的动态库或静态库

库:本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行,分为静态库和动态库两类。另外,需要知道的是,由于windows和Linux是两款操作系统,因此,二者的库是不兼容的。 静态函...

暮回_梓
2017/03/03
0
0
linux 下静态库和动态库详解

一、基本概念 1.1什么是库 在windows平台和linux平台下都大量存在着库。 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。 由于windows和linux的平台不同(主要是编...

CoderFarmer
2013/07/03
0
0
在Linux中创建静态库和动态库范例 (hello.c)

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

AlphaJay
2010/05/31
0
0
gcc详解以及静态,动态库的生成 2

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

AlphaJay
2010/09/10
0
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS7.4 搭建 ss

一键安装 shadowsocks-go 版 wget –no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-go.sh chmod +x shadowsocks-go.sh ./s......

YunOu
14分钟前
2
0
Spark Streaming整合kafka实战

kafka作为一个实时的分布式消息队列,实时的生产和消费消息,这里我们可以利用SparkStreaming实时计算框架实时地读取kafka中的数据然后进行计算。在spark1.3版本后,kafkaUtils里面提供了两个...

hblt-j
15分钟前
1
0
vue组件中的样式属性scoped实例

vue组件中的style标签标有scoped属性时表明style里的css样式只适用于当前组件元素 。接下来通过本文给大家分享vue组件中的样式属性scoped实例详解 **Scoped CSS** Scoped CSS规范是Web组件产...

前端攻城老湿
30分钟前
2
0
ios 面试部分整理

assign weak区别 assign不是有崩溃的风险么 strong和copy 对非容器类可变类型 非容器类不可变 容器类可变容器类不可变 进行深拷贝浅拷贝有什么区别 什么样的对象可以进行拷贝 就是这个NScod...

大魔王周晓辉
31分钟前
2
0
浅谈教你如何掌握Linux系统

linux能做什么?相信绝大数人都有这样的疑问。可以玩吃鸡吗?可以玩lol吗? 如果你是以娱乐的名义来评价linux的可用性,对不起,linux可能不适合你,因为linux是一个工具,他是教你聪明的,不...

Linux就该这么学
32分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部