我有一個在早期版本的 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
.
我從原始碼重建了程序,一切正常。
我可以使用哪些選項來自動測試二進位文件,以查看在運行它的給定平台上是否滿足所有共享庫依賴項?