1

-我正在尝试编译 netsnmp mib 并扩展 snmp 代理的功能。

  • 当我尝试启动守护程序并加载共享对象 (*.so) 时,守护程序会抱怨未定义的符号。“dlopen 失败:Filename.so:未定义符号:netsnmp_container_table_row_extract”

  • 在进一步刺激 #nm -D -u Filename.so 打印出许多未定义的引用/符号

  • 其中一些引用 system calls特定于 snmp 代理。

  • 我在编译代码时没有任何问题。所有缺少的引用/符号都是对 netsnmp 代理的调用。

问题: 1. 我如何在不解析这些符号的情况下进行编译?AFIK:这些符号必须已静态解析。2. 我假设系统无法在运行时解决这些问题?3.我怎样才能克服这个问题?有什么建议么

谢谢 SS

4

1 回答 1

1

如果符号来自另一个库,则应在编译时链接它。如果符号来自主应用程序,则应用程序应与--export-dynamic.

于 2010-05-27T18:39:46.640 回答