Rust 用于检查.rlib文件的工具

Rust 用于检查.rlib文件的工具,rust,static-libraries,Rust,Static Libraries,我有一个从存储库生成的rlib(一个可以在嵌入式Rust中使用的HAL库),我想为我的研究工作确定库中函数的指令序列。虽然有很多工具可以用于不同的语言,但我找不到一个可以与rlib一起使用的工具。我找到了,但是这里提到的工具似乎不起作用。rlib格式是Rust特有的,其格式未指定。它本质上是各自平台的静态库格式,在其他归档成员中包含一些额外的元数据。这意味着您可以在平台上使用任何工具来检查静态库 在Linux上,您可以使用objdump-d转储.rlib文件中所有函数的反汇编。但是,所有符号都会

我有一个从存储库生成的rlib(一个可以在嵌入式Rust中使用的HAL库),我想为我的研究工作确定库中函数的指令序列。虽然有很多工具可以用于不同的语言,但我找不到一个可以与rlib一起使用的工具。我找到了,但是这里提到的工具似乎不起作用。

rlib格式是Rust特有的,其格式未指定。它本质上是各自平台的静态库格式,在其他归档成员中包含一些额外的元数据。这意味着您可以在平台上使用任何工具来检查静态库

在Linux上,您可以使用
objdump-d
转储
.rlib
文件中所有函数的反汇编。但是,所有符号都会损坏且难以读取,这可以通过
rustfilt
修复:

cargo install rustfilt
objdump -d whatever.rlib | rustfilt

取消归档
.rlib
文件时,会有一个
.o
文件和
.rmeta
文件


因为
.o
是目标文件,
.rmeta
看起来像是在中定义的。

我认为
.rlib
只是带有一些附加元数据的静态库。你在哪个站台?在Linux上,您应该能够使用适用于
.a
文件的标准工具,例如
ar
nm
objdump
。例如,
objdump-d whatever.rlib
提供了对rlib中所有函数的反汇编。A也许也会有帮助。非常感谢。我使用了objdump,它似乎在工作。你知道我可以用什么方法去除锈迹符号吗?对不起,我只是一个生锈的初学者,没有太多的经验,显然我在最后的评论中链接了错误的东西
cargo install rustfilt
并将
objdump
的输出输送至
rustfilt
应能提供合理的输出。