dleeeor()确定加载动态库时缺少的符号

发布时间 2023-09-25 09:47:32作者: 枝桠

 

 

 

[plugins_open_plugin plugins.c:79]1970-01-01T17:46:22Z|00003|plugins|INFO|netdev_register not supported by /var/lib/plugins/libacl_plugin plugin
[plugins_open_plugin plugins.c:83]1970-01-01T17:46:22Z|00004|plugins|INFO|ofproto_register not supported by /var/lib/plugins/libacl_plugin plugin
[plugins_open_plugin plugins.c:87]1970-01-01T17:46:22Z|00005|plugins|INFO|bufmon_register not supported by /var/lib/plugins/libacl_plugin plugin
[plugins_open_plugin plugins.c:115]1970-01-01T17:46:22Z|00006|plugins|INFO|Loaded plugin library /var/lib/plugins/libacl_plugin
/wns/lib/libopennsl.so: undefined symbol: telnet_log
[[[loaders/dlopen.c:216]]] open /var/lib/plugins/libovs_bcm_plugin.so:1 fail, strerror(2:No such file or directory)
[plugins_open_plugin plugins.c:60]1970-01-01T17:46:22Z|00007|plugins|ERR|Failed loading /var/lib/plugins/libovs_bcm_plugin: file not found
[[[loaders/dlopen.c:213]]] open /var/lib/plugins/libqos_plugin.so:1 success

 

在加载 libovs_bcm_plugin.so 的时候也会加载SDK的 libopennsl.so, 而 libopennsl.so 中缺少一个符号,导致整个 libovs_bcm_plugin.so 库也加载不进去。
用 fprintf(strerr, "%s\n", dlerror()) 把缺少的符号打印出来