[SSSD] ding-libs: symbol versioning is necessary

Jan Engelhardt jengelh at inai.de
Sun Dec 22 22:57:05 UTC 2013


I had libref_array1-0.1.1 and libini_config2-0.6.1 (which were built 
from ding-libs-0.1.3) installed in the system. Few days ago I built the 
new ding-libs-0.3.0.1 source which, among others, yielded a binary 
libini_config3-1.0.0.1 package.

After installation of libini_config3, ldd -r 
/usr/lib64/libini_config.so.3 yields:

undefined symbol: ref_array_copy        (/usr/lib64/libini_config.so.3)

which is a sign that libini_config3 needs a newer libref_array1, 
but the package manager did not catch it because the release 
following commit 8c201905d5f0720b62d036eb2308f81f4530cfad
failed to do one of:

 (1) changing the SONAME of ref_array, or
 (2) using symbol versions

to indicate the new backwards-incompatibility. People, -version-info 
1:0:0 => -version-info 2:0:1 is not enough! You must either

 (1) -version-info 2:0:0, or
 (2) -Wl,--version-script=ref_array.map



More information about the sssd-devel mailing list