我有一个基于RHEL 5.8版(Tikanga)构建的C应用程序。我们有一个运行RHEL版本6.3(圣地亚哥)的新盒子。每当我尝试在新机器上运行应用程序时,我都会收到以下输出:
myApp: error while loading shared libraries: libldap-2.3.so.0: cannot open shared object file: No such file or directory
我正在收集这是因为我在不同的RHEL版本上编译了我的应用程序,而不是我试图在其上运行它,因为RHEL版本6.3(Santiago)在/ lib64中需要不同版本的LDAP库,即libldap-2.4.so.2。如果不简单地安装旧的libldap-2.3.so.0库(有管理原因导致无法实现这一点),有没有办法抽象库依赖,以便我可以编译不依赖于特定版本库的代码?