问题标签 [nm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
221 浏览

c++ - 在 cpp 文件中列出外部变量

“nm”命令未列出外部变量,因为它们已被声明为 extern,因此在此程序中不会为它们分配内存。有没有其他方法可以列出外部变量?关于外部变量声明的信息存储在哪里?

os windows 7 编译器 mingw 或 vs2010

0 投票
1 回答
511 浏览

c - 重复符号和应用程序崩溃

我正在 AIX 上编译一个程序。它编译成功,但给出以下警告:

我试图在我的“common.o”文件中找到这个符号。

但是当在可执行文件上找到这个符号时,我发现以下内容:

  • 我可以显示包含此符号的库名称吗?

  • 这个符号是否出现在我的源文件中?(可能听起来很傻,但我真的不知道)

我找到了这个问题的答案,它可以在源头中追踪。

  • 我应该采取哪些步骤来删除此警告?这个重复的符号也会导致应用程序崩溃吗?就我而言,它正在崩溃。
0 投票
3 回答
607 浏览

c - 链接错误 - 使用 nm 修复

我有一个链接错误,我应该使用nmUnix 上的命令来修复它。

如果我有以下链接错误:undefined reference to 'program_name',并且nm在该目标文件上运行时,program_name符号在符号表中显示如下:U program_name

我知道program_name是未定义的,并且定义在另一个需要包含在原始目标文件中的目标文件中。我的问题是:我怎样才能找到它是哪个目标文件?那可能吗?我在一个目录中有一堆目标文件,它就是其中之一。有太多的尝试所有这些。

0 投票
1 回答
709 浏览

c - 如何列出具有 .o 扩展名的静态库中的文件名

我有两个 c 程序文件temp1.ctemp2.c. 我dot o为此temp1.otemp2.o. 之后,我生成final.ofinal.a结合了这两个dot o文件。现在这两个静态库工作正常。

现在 nm 报告final.a正在显示所有文件名和符号。但是 nm 报告final.o不显示文件名,它只显示符号。

获取我用于创建的文件名列表的方法是什么final.o

0 投票
1 回答
10086 浏览

unix - 库依赖工具

我正在寻找平台上的/tool来检测和文件的依赖关系。commandUnixlibrary.so.o

我已经使用了ldd// nmtruss但我不知道检测库依赖关系的正确方法。

0 投票
0 回答
243 浏览

unix - ICU 图书馆是否已损坏?

我正在nm –u为 ICU 库获得以下输出。这是否意味着该库已损坏?在使用这个库时,我们的一些代码需要 20 分钟才能完成执行。我怀疑这是因为这个库已损坏,但我不确定。

0 投票
1 回答
2405 浏览

linux - 从编译文件(linux)中获取所有全局变量。如何将静态与常量分开?

所以,我这里有一些很奇怪的东西。

例如,我有 2 个 .cpp 文件,其中一个包含

第二个是

两个片段都在全局变量部分。我需要打印全局静态变量(例如),但忽略常量。在nm输出中,它们看起来完全相同(每种情况下的 b 类型,这意味着未初始化的本地范围符号)。有没有办法仅使用 linux 实用程序(grep、regexps 等完全可以)来自动分离这种情况?

0 投票
1 回答
140 浏览

c - 在 nm 报告中验证符号更改的简单方法

我正在使用 Susegcc编译器编译我的库(C 编程),然后生成nm该库的报告。我必须将该 nm 报告与以前的版本库进行比较,以检查当前版本库中存在和不存在的符号。

现在我只是用一些文本比较工具比较nm_0.1.txt和文件。nm_0.2.txt除了符号差异之外,我也得到了偏移差异。我不担心偏移差异。

是否有任何命令(在 windows 或 suse 中)可用于以简单的方式仅突出显示 nm 报告中的符号差异。

注意:生成的 nm 报告会非常大。手动打开该文本文件并使用某些工具删除该 nm 报告的第一列对于那个大 nm 文件来说不是一件容易的事。

0 投票
1 回答
365 浏览

macos - 有没有办法确定共享库导出符号的函数参数?

有没有办法确定共享库导出符号的函数参数?出于好奇目的,我正在调查一个私有 OSX 框架(我知道 Apple 商店政策等)。我可以执行 nm -g /path/to/library 并确定所有导出的符号,但是,我很好奇确定必须传递给这些调用的参数。

0 投票
1 回答
1029 浏览

segmentation-fault - 由于链接问题,程序无法运行

我在执行二进制文件时遇到了麻烦。程序收到分段错误。过滤是 gdb 的输出

然后我使用了 nm 实用程序

我发现许多符号未定义。这个 a.out 二进制文件实际上是通过链接许多其他 .so 获得的。我在其中一个 .so 上做了 nm

该程序与上面的 libmylib.so 链接。在链接过程中我没有收到任何错误。

但是,如果没有 -shared 选项,我会收到以下错误

可能是什么问题呢?有人可以建议我如何解决这个问题吗?提前致谢