Linux 中的 ranlib 命令与示例
Linux 中的ranlib命令用于生成索引以归档。 ranlib生成存档内容的索引,并将其存储在存档中。索引列出了归档的成员定义的每个符号,归档只是可重定位的目标文件。您可以使用nm -s或nm –print-armap列出所有这些索引。具有此类索引的档案可加快与库的链接,并允许库中的例程相互调用,而无需考虑它们在档案中的位置。 GNU ranlib程序是另一种形式的 GNU ar;运行ranlib完全等同于运行ar -s 。
句法:
ranlib [--plugin name] [-DhHvVt] archive
示例:它将生成索引以存档,如下例所示。
说明:正如您在上面的示例中看到的,我们将三个名为main.o 、 point.o和rectangle.o 的文件归档到fruit.a ,然后使用ranlib命令生成归档内容的索引,并将其存储在存档。
选项:
- –help:此选项将显示ranlib 的使用信息。
ranlib --help
- –version:此选项将显示ranlib的版本号。
ranlib --version
- -D :此选项将在确定性模式下运行。成员标头的符号映射存档将为 UID、GID 和时间戳显示零。使用此选项时,多次运行将产生相同的输出文件。
例子:
ranlib -D fruits.a
说明:正如您在上面的示例中看到的,我们将名为main.o 、 point.o和rectangle.o 的三个文件归档到fruit.a ,然后使用带有选项 -D 的 ranlib 命令,我们将操作模式更改为确定性和生成存档内容的索引,并将其存储在存档中。
- -t :此选项将更新存档符号映射的时间戳。
例子 :
ranlib -t fruits.a
- -U:此选项不在确定性模式下运行。这与 -D 选项完全相反。归档索引将获得实际的 UID、GID、时间戳和文件模式值。如果binutils是在不使用–enable-deterministic-archives 的情况下配置的,则默认设置此模式。
例子:
ranlib -U fruits.a