在我们的产品中,我们发布了一些动态链接到系统库的 linux 二进制文件,比如“ libpam”。在某些客户系统上,当程序运行时,我们在 stderr 上会得到以下错误:
./authpam: /lib/libpam.so.0: no version information available (required by authpam)
应用程序运行良好,并从动态库执行代码。所以这不是一个致命的错误,它只是一个警告。
我认为这个错误来自动态链接器,当系统安装的库缺少我们的可执行程序所期望的东西时。我不太了解动态链接过程的内部结构... ... 在谷歌上搜索这个主题也没有多大帮助。:(
有人知道是什么导致了这个错误吗?如何诊断病因?以及我们如何更改可执行程序以避免这个问题?
更新: 客户升级到最新版本的 debian“测试”,同样的错误发生了。所以这不是一个过时的 libpam 图书馆。我想我想知道连接器在抱怨什么?我如何调查根本原因等?