我想链接到 C 语言的共享库。(在 Linux 上)
我想抑制或处理:
“加载共享库时出错:libxxxx.so:无法打开共享对象文件:没有这样的文件或目录”
并继续加载到下一个库的链接,该库可能会解决左侧未解析的符号。
我猜应该使用 gcc/ld/dlsym 选项,但无法理解如何...
有人知道吗?
最佳答案
如果您收到此错误,则说明您正在链接到执行链接的系统上不存在(或至少在库路径上不存在)的共享库。
您不能链接到不存在的共享库;如果有其他库可能(希望能够)解析仍要链接的符号,则只需删除指向不存在的共享库的链接即可。
如果您想要做的是仅当共享库存在时才使其链接到该共享库,则适当的操作过程是使用 dlopen()
在代码中打开该库,而不是把它放在链接线上。
关于C 动态链接到共享库抑制/处理 "cannot open shared object file" fatal error ,并继续链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22771578/