我有一個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