Linux静态库和动态库的设计
静态库和动态库的设计
宗旨:技术的学习是有限的,分享的精神是无限的。
Linux应用程序设计中需要的外部函数主要由函数库和系统调用来提供
Linux应用程序使用的主要函数库均存放于/lib, /usr/lib目录下,其中采用*.so.*方式命名的是动态函数库,而以*.a方式命令的是静态函数库(空间占据大)
Linux下进行链接时 默认是链接动态库
1、制作静态库
(1).gcc -c mylib.c -o mylib.o
(2).ar cqs libmylib.a mylib.o
(3).将制作好的libmylib.a复制到/usr/lib
(4).GCC在链接时,默认只会链接C函数库,而对于其他的函数库,则需要使用-l选项来显示地指明需要链接。例:gcc test.c –lmylib -o test
2、制作动态库
(1).gcc -c mylib.c -o mylib.o
(2).ar -shared -fPIC mylib.o -olibmylib.so
(3).将制作好的libmylib.so复制到/usr/lib
-fpic 使输出的对象模块是按照可重定位地址方式生成的。
-shared 指明产生动态链接库
(4).GCC在链接时,默认只会链接C函数库,而对于其他的函数库,则需要使用-l选项来显示地指明需要链接。例:gcc test.c –lmylib -o test
Linux静态库和动态库的设计相关推荐
- Linux下的静态库、动态库和动态加载库
from: http://www.techug.com/linux-static-lib-dynamic-lib 库的存在极大的提高了C/C++程序的复用性,但是库对于初学者来说有些难以驾驭,本文从L ...
- [学习备忘录]Linux平台静态库、动态库的一些笔记
先声明几点: 1.操作系统:linux(fc9).编译器:gcc-4.3.0.编辑器:包括但不限于emacs.vim.这些无理由也不应造成限制. 2.生成的可执行文件名称比较有规律,仅仅是为了演示的方 ...
- linux下终端urvst,Linux中的静态库与动态库
#什么是库文件? 库文件是事先编译好的方法的合集.比如:我们提前写好一些数据公式的实现,将其打包成库文件,以后使用只需要库文件就可以,不需要重新编写. #Linux系统中: 1.静态库的扩展名为.a: ...
- 【C语言】标准库(头文件、静态库、动态库),windows与Linux平台下的常用C语言标准库
一.Introduction 1.1 C语言标准库 1.2 历代C语言标准 1.3 主流C语言编译器 二.C语言标准库 2.1 常用标准头文件 2.2 常用标准静态库 三.windows平台 四.Li ...
- linux静态库与动态库整理
简化版本 静态库: 制作: gcc -g -c ./*.c -I ../include/ ar crs libmod.a *.o 使用 gcc -g main.c -L ./ -lmod -I ../ ...
- Linux下静态库与动态库的引用关系深入分析
很久就想写一篇关于动态库和静态库互相引用的一篇文章,但是总感觉准备不充分,而一直没有勇气下笔,最近在和同事的讨论中,似乎有了一些新的认识,想把这些记录下来,和大家进行一次分享,同时也是做一次记录. 这 ...
- 【Linux】静态库与动态库
前言 对于C/C++的学习者,我们经常听到C/C++的标准库,我们也经常使用它们,但是我们在使用的时候经常只包含一下头文件,然后就使用了,我们从来没有认真的研究过C/C++的标准库,而且C/C++的头 ...
- 关于Linux静态库和动态库的分析
From: http://hi.baidu.com/bdccutysj/blog/item/5bae7f0202abac7c3912bb15.html 1.什么是库 在windows平台和linux平 ...
- linux 中如何将文件粘贴到usr下的lib内,学会在Linux下GCC生成和使用静态库和动态库...
一.基本概念1.1什么是库 在windows平台和linux平台下都大量存在着库. 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行. 由于windows和linux的平台不同(主 ...
最新文章
- XShell 技巧分享
- python好学吗mooc中文网-Python语言程序设计
- Spring Boot 最佳实践
- Oracle 练习题P256
- Python小白的数学建模课-22.插值方法
- allure 测试报告本地打开_Pytest和Allure测试框架(二)
- .NET四种注释规范
- spring MVC中定义异常页面
- @enableautoconfiguration注解作用_如何让代码变“高级”-Spring组合注解提升代码维度(这么有趣)...
- 【机器学习案例】酒店用机器学习,预测哪些客人会放鸽子
- Flutter之_slot 插槽属性详解
- 第一章ASP程序设计概述
- wincc 服务器授权型号,WinCC V7.5 SP1软件安装及授权方法
- SD卡和SDHC卡操作
- 3第三课:区块链的激励机制
- mobel web 笔记
- 基于微信小程序云开(统计学生信息并导出excel)
- 7-3 电话聊天狂人 (25 分)
- r75800h参数 r7 5800h怎么样
- 新标准大学英语第二版视听说教程1-4