Alsa's libasound tries to be backward compatible and sets appropriate versions for every binary symbol. However, some time ago it was found that actual versions were not set as expected, i.e. as specified by the file passed to ld using '--version-script'.
More particular, version assignment starts properly but since some moment all symbols obtain the default version, not the specified one. After such a mismatch was discovered for a first time, the problematic version nodes (that didn't have any effect) were simply dropped from the Version script, so for experiments one should use not the very fresh release of alsa; let's take 1.0.15, for example: ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.15.tar.bz2 The script passed to ld with '--version-script' is src/Versions one, created from the src/Versions.in by configure. The file contains version nodes with names from ALSA_0.9 to ALSA_1.0.14. The resulting library has symbols with ALSA_0.9, ALSA_0.9.0, ALSA_0.9.3, ... ALSA_0.9.7 ... and all. Starting with ALSA_0.9.8, versions are not assigned; instead of them, corresponding symbols obtain ALSA_0.9 version as the default one for all snd_* symbols. If we move snd_* from ALSA_0.9 to ALSA_1.0.14 node (the latest one), then everything is ok - we see all problematic symbols to have proper versions (surely, symbols not mentioned directly in the file now have ALSA_1.0.14 instead of ALSA_0.9, so this is not the solution). So the question is - why the default version is set even for symbols for which a separate entry in the Version file exists? Looks like a bug in ld. The problem occurs with almost all versions of ld - haven't tried binutils 2.19 and head, but our investigation of distributions show that there is no distribution that provides libasound where at least one symbol exists with version ALSA_0.9.8 and higher. -- Summary: ld incorectly sets versions of symbols for ALSA Product: binutils Version: unspecified Status: NEW Severity: normal Priority: P2 Component: ld AssignedTo: unassigned at sources dot redhat dot com ReportedBy: silakov at ispras dot ru CC: bug-binutils at gnu dot org http://sourceware.org/bugzilla/show_bug.cgi?id=7047 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org http://lists.gnu.org/mailman/listinfo/bug-binutils