我有一个ANSI C程序,它使用dlopen()传递RTLD_LAZY动态加载.so文件。我收到dlerror:FreeBSD 7.2上未定义的符号“_nss_cache_cycle_prevention_function”
Undefined symbol "_nss_cache_cycle_prevention_function"
在FreeBSD 7.2中访问.so文件时发出警告。 nss_cache_cycle_prevention_function()不是我程序的函数之一,我想必须来自FreeBSD。这也可能是Linux上的一个问题,虽然我没有遇到这个问题。我不想将FreeBSD特定的头文件加载到我的程序中。我想要以便携的方式包含这个功能或者抑制这些警告。
是的,我的程序在调用dlsym()之后将任何非NULL dlerror()返回值吐出到日志中。在我调用dlsym()之前,我做了你所说的并调用了dlerror(),并且未定义的符号警告消失了!谢谢。 – 2010-08-31 19:51:55