当前位置: 首页 > news >正文

GNU/Linux - GCC编译的静态库

使用gcc编译出的静态库文件,后缀名是".a"。

使用二进制格式打开的话,开头内容是:

二进制:

21 3C 61 72 63 68 3E 0A 2F 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20

31 37 36 30 35 39 36 39 39 34 20 20 30 20 20 20 20 20 30 20 20 20 20 20

字符:

!<arch>

/               1760596994  0     0    

!<arch>是 Unix/Linux 下的归档文件(archive file)的魔数(magic number),表示该文件是一个 ar(archive)格式的文件。

*静态库文件(如 .a文件)本质上就是一种 ar 归档文件,它里面打包了一个或多个目标文件(.o文件)。

*所以当你使用 ar工具去创建或查看 .a文件时,它遵循 ar 格式规范。

*文件开头固定为字符串:!<arch>\n(注意后面有一个换行符),用来标识这是一个 ar 格式的归档文件。

第二行是一个时间戳。在其他地方,尤其是 .o 文件名后面,也会有一个时间戳,表明文件的更新时间。

开头的时间是最新的,表示此ar文件的创建时间。其他的 .o 文件,就应该是编译时的时间。

所以,即使代码都是一样,编译的.o文件一样,但打包成.a文件后,由于时间戳不一样,生成的库文件二进制比较还是不同。

要查看这个时间戳对应的具体时间,可以在Linux终端中输入:

date -d @1760596994

Thu Oct 16 14:43:14 CST 2025

date -d @0

Thu Jan  1 08:00:00 CST 1970

http://www.dtcms.com/a/499617.html

相关文章:

  • 西安建网站哪家好企业网站蓝色模板下载
  • 成都模板建站代理网站优化要做哪些工作
  • Java MyBatis(一)--- 注解和XML的使用
  • 东莞官方网站 优帮云网站怎么做推广和优化
  • win64_11gR2_client.zip 怎么安装?Oracle 11g 客户端详细安装步骤
  • 建设向58同城的网站给客户做网站需要提供
  • flink sql 所有函数详细用例
  • Flink 1.20 flink-config.yml 配置详解
  • 湖州网站集约化平台南京做网站哪家公司好
  • 【深度学习新浪潮】2025全球机器学习技术大会:Agent技术突破与产业落地全景解析
  • 长沙整站优化梅河口信息网
  • Linux入门:动静态库的理解与加载
  • 云上救火指南:AWS常见服务告警的快速恢复与最小影响方案
  • 九号线香网站建设淘客网站后台怎么做
  • FPGA 入门 3 个月学习计划表
  • 专业的做网站网站做外链好嘛
  • ios android 小程序 蓝牙 CRC16_MODBUS
  • 沧州网站建设优化案例怎么创建一个网站
  • 【小沐杂货铺】基于Three.js渲染三维风力发电机(WebGL、vue、react、WindTurbine)
  • Socket 网络编程
  • 哪里可以做网站网站兼容性怎么解决
  • 网站备案流程实名认证哪个平台做网站好
  • 最版网站建设案例中国建设银行开户行查询
  • 衡水网站制作多少钱世界著名产品设计作品
  • 我们如何更好地相处和协作?
  • Vlanif的作用
  • 62.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--新增功能--自训练ML模型
  • 北京住房城乡建设网站秦皇岛手机网站制作公司
  • 【SpringBoot从初学者到专家的成长18】SpringBoot中的数据持久化:JPA与Hibernate的结合
  • Ubuntu服务器已下载Nginx安装包的安装指南