.oファイルのシンボルを表示するにはどうすればよいですか?nmは私には機能しません。私はg++/linuxを使用しています。
質問する
100555 次
5 に答える
114
の代わりにnm
、強力なを使用できますobjdump
。詳細については、manページを参照してください。objdump -t myfile
またはを試してくださいobjdump -T myfile
。フラグを使用すると、-C
C++名をデマングルすることもできますnm
。
于 2010-10-07T11:05:25.310 に答える
15
別のプラットフォームでクロスコンパイラを使用していますか?その場合は、それぞれnm
またはobjdump
コマンドを使用する必要があります。
たとえばXXX-YYY-gcc
、.oファイルのコンパイルに使用したことがある場合は、ファイルを使用XXX-YYY-nm
またはXXX-YYY-objdump
処理する必要があります。
于 2010-10-07T11:35:06.547 に答える
6
オブジェクトファイル、ライブラリ、または実行可能ファイルに含まれている関数を確認するコマンドがあります。
nm
于 2010-10-07T10:58:06.787 に答える
6
とにかく走れ: nm you_obj_file.o | c++filt
于 2016-12-30T02:20:06.243 に答える
2
nm -C .o/lib/exe
たとえば、次のように使用できます。
xiongyu@ubuntu:~/tmp/build$ nm -C libfile1.a
file1.cpp.o:
0000000000000000 T f()
0000000000000000 W int fun<int>(int)
nm -C
あなたが単に使用する場合、それを使用すると、より読みやすくなりnm
ます:
xiongyu@ubuntu:~/tmp/build$ nm libfile1.a
file1.cpp.o:
0000000000000000 T _Z1fv
0000000000000000 W _Z3funIiET_S0_
私たちが見るように、それはそれほど読みにくいです。
以下は私のfile1.cpp
好きなものです:
xiongyu@ubuntu:~/tmp/build$ vi ../file1.cpp
#include "head.h"
void f() {
int i = fun<int>(42);
}
于 2018-09-29T01:59:29.610 に答える