我怎样才能看到 ar -s 正常工作?
How can i see that ar -s works correctly?
我有一些生成的目标文件,我使用这些文件创建了一个静态库:
ar -r libmine.a *.o
之后我通过以下方式添加索引:
ar -s libmine.a
如何比较第一个命令和第二个命令以及哪些附加函数给我该索引?
使用此命令后:
ar -r libmine.a *.o
我用过这个:
nm -s libmine.a
我得到:
Archive index:
add in add.o
mul in mul.o
sub in sub.o
add.o:
0000000000000000 T add
mul.o:
0000000000000000 T mul
sub.o:
0000000000000000 T sub
我执行下一步 ar -s libmine.a
,在 nm -s libmine.a
之后我得到相同的输出。为什么? ar -r
包含 ar -s
?
带有索引的存档可加快链接到库的速度,并允许库中的例程相互调用而无需考虑它们在存档中的位置。
您可以使用 nm -s
或 nm --print-armap
列出索引 table。
哦,创建库的命令是ar -r <lib.a> <objects>
。您混淆了对象和库名称。
详细说明您的 "continuation":是的,每当 ar
对存档进行更改时,ar
会自动为您保留并更新索引 table。 ar
的大多数现代实现甚至在首次创建存档时自动创建这样的索引,而无需调用 ar -s
.
我有一些生成的目标文件,我使用这些文件创建了一个静态库:
ar -r libmine.a *.o
之后我通过以下方式添加索引:
ar -s libmine.a
如何比较第一个命令和第二个命令以及哪些附加函数给我该索引?
使用此命令后:
ar -r libmine.a *.o
我用过这个:
nm -s libmine.a
我得到:
Archive index:
add in add.o
mul in mul.o
sub in sub.o
add.o:
0000000000000000 T add
mul.o:
0000000000000000 T mul
sub.o:
0000000000000000 T sub
我执行下一步 ar -s libmine.a
,在 nm -s libmine.a
之后我得到相同的输出。为什么? ar -r
包含 ar -s
?
带有索引的存档可加快链接到库的速度,并允许库中的例程相互调用而无需考虑它们在存档中的位置。
您可以使用 nm -s
或 nm --print-armap
列出索引 table。
哦,创建库的命令是ar -r <lib.a> <objects>
。您混淆了对象和库名称。
详细说明您的 "continuation":是的,每当 ar
对存档进行更改时,ar
会自动为您保留并更新索引 table。 ar
的大多数现代实现甚至在首次创建存档时自动创建这样的索引,而无需调用 ar -s
.