make install doesn't update all .so symlinks
Minor annoyance in make -C openpgp-ffi install
. Trying to update the pEp engine on a pretty dated installation (2019) I got this error when loading the pEp Python module:
ImportError: /lib/libpEpEngine.so: undefined symbol: pgp_valid_key_amalgamation_set_expiration_time
New version: Sequoia@openpgp/v1.3.0 (pEpEngine@Release_2.1.42, libpEpAdapter@Release_2.1.21, pEpPythonAdapter@2.1.3).
Old version: Sequoia@pep-engine (4cd348c4)
Turns out the error was because there was still the old libsequoia_openpgp_ffi.so.0.12.0
floating in /usr/local/lib and while the symlink libsequoia_openpgp_ffi.so.0
in the same dir was correctly updated to point to the new .22, the symlink without the .0
suffix was not updated and kept pointing to the old .12. And since .so files tend to be tried from shortest to longest the pEp engine ended up loading the old version while it was compiled against the new one.