我有一个在早期版本的 Fedora 上编译的程序,在升级后突然崩溃了。当时我正在运行旧版本的 Fedora,该版本已停止接收更新;所以我决定升级。
出乎意料的是,由于缺少共享库,二进制文件无法运行:
error while loading shared libraries: libboost_filesystem.so.1.66.0:
cannot open shared object file: No such file or directory
必要的包已安装,但版本已更改:
Package boost-filesystem-1.69.0-9.fc31.x86_64 is already installed.
问题在于该程序链接到特定版本的libboost_filesystem.so
.
我从源代码重建了程序,一切正常。
我可以使用哪些选项来自动测试二进制文件,以查看在运行它的给定平台上是否满足所有共享库依赖项?