无法重现构建静态库
Cannot reproduce building static library
我创建了一个静态库 (libxil.a
)(更准确地说,Xilinx 的 SDK 从 BSP 源代码生成了一个静态库)
我意识到 运行 make
两次在相同来源上产生不同的 libxil.a
。 (md5sum-s不同):
$ make
...
$ md5sum libxil.a
66f2a981ba0e608b4747d59c8d706561 libxil.a
$ make clean
$ make
...
$ md5sum libxil.a
ba26dba2211e539d0f17d9a4464b3386 libxil.a
我试图查看与 objdump -s
的区别,但没有:
diff <(objdump -s libxil1.a) <(objdump -s libxil2.a)
(-s
显示请求的所有部分的完整内容)
如何查看差异?
为什么这两个编译完全不同?
objdump
的 -s
开关不会转储 headers。也用-x
开关,”显示所有headers”的内容
$ diff <(objdump -sx libxil1.a) <(objdump -sx libxil2.a)
...
4c4
< rw-rw-r-- 1008/1008 1324 Jul 24 10:36 2020 xio.o
---
> rw-rw-r-- 1008/1008 1324 Jul 24 10:46 2020 xio.o
...
静态库存储object 文件的创建日期。这些时间戳因编译而异。
我创建了一个静态库 (libxil.a
)(更准确地说,Xilinx 的 SDK 从 BSP 源代码生成了一个静态库)
我意识到 运行 make
两次在相同来源上产生不同的 libxil.a
。 (md5sum-s不同):
$ make
...
$ md5sum libxil.a
66f2a981ba0e608b4747d59c8d706561 libxil.a
$ make clean
$ make
...
$ md5sum libxil.a
ba26dba2211e539d0f17d9a4464b3386 libxil.a
我试图查看与 objdump -s
的区别,但没有:
diff <(objdump -s libxil1.a) <(objdump -s libxil2.a)
(-s
显示请求的所有部分的完整内容)
如何查看差异?
为什么这两个编译完全不同?
objdump
的 -s
开关不会转储 headers。也用-x
开关,”显示所有headers”的内容
$ diff <(objdump -sx libxil1.a) <(objdump -sx libxil2.a)
...
4c4
< rw-rw-r-- 1008/1008 1324 Jul 24 10:36 2020 xio.o
---
> rw-rw-r-- 1008/1008 1324 Jul 24 10:46 2020 xio.o
...
静态库存储object 文件的创建日期。这些时间戳因编译而异。