Tengo un programa que compilé en una versión anterior de Fedora que de repente se rompió después de una actualización. En ese momento estaba ejecutando una versión anterior de Fedora que había dejado de recibir actualizaciones; así que decidí actualizar.
Lo inesperado fue que un binario no se pudo ejecutar debido a que faltaba una biblioteca compartida:
error while loading shared libraries: libboost_filesystem.so.1.66.0:
cannot open shared object file: No such file or directory
Se instaló el paquete necesario, pero la versión había cambiado:
Package boost-filesystem-1.69.0-9.fc31.x86_64 is already installed.
El problema era que el programa estaba vinculado a una versión específica de libboost_filesystem.so
.
Reconstruí el programa desde la fuente y todo funcionó bien.
¿Qué opciones tengo disponibles para realizar pruebas automatizadas de un binario, para ver si todas las dependencias de la biblioteca compartida están satisfechas, en una plataforma determinada en la que se ejecuta?