栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

静态库的制作 in C++【Linux项目学习笔记】

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

静态库的制作 in C++【Linux项目学习笔记】

静态库的制作 关于库的概述

库文件是一类文件,可简单将库文件看作一种代码仓库,它提供给使用者一些可以直接拿来用的变量,类或者函数

库是一种特殊的程序,和一般程序区别不大,只是库不能单独运行

库文件有两种:静态库和动态库

  • 静态库在程序的链接阶段被复制到了程序中
  • 动态库在链接阶段没有被复制到程序中,而是程序在运行时有系统动态加载到内存中供程序调用

库的好处

  • 代码保密(别人用你的库,但是不会了解你的源码)
  • 方便部署和分发
库的制作 命名规则
  • Linux : libxxxx.a
    • lib : 前缀(固定)
    • xxxx : 库的名字
    • .a :后缀(固定)
静态库的制作
  • 先由gcc获得.o文件,即是gcc -c 文件
  • 再将.o文件打包,使用 ar 工具(archive)
    • ar rcs libxxx.a xxx.o xxx.o (ar rcs 库的名字 构成库所需的.o文件)
      • r ---- 将文件插入备存文件中
      • c ---- 建立备存文件
      • s——索引
例子

比如在文件A下有很多.c结尾的文件,如add.c div.c head.h main.c mult.c sub.c ,现在要把它们打包成一个静态库供他人使用

则在终端下进入到该文件目录下(即目录下都是刚刚的.c结尾的文件),输入gcc -c add.c div.c mult.c sub.c,便可获得.o文件(注意这里头文件不需要生成.o文件,只需要.c就好了)

随后输入ar rcs MyLib.a add.o sub.o mult.o div.o,得到的MyLib.a便是我们的静态库了加粗样式

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/876064.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号