On Saturday 23 April 2011 10:03:32 Tobias Hansen wrote: > Am 23.04.2011 05:07, schrieb Paul Wise: > > I would suggest adding a symbols file so that stuff using the new > > symbols gets the new version and anything else gets the old version. > > > > http://wiki.debian.org/UsingSymbolsFiles > > On that wiki page it says: > "If you find (on some arches) symbols that are exported which are not > supposed to be public, you must not use symbols versioning at all." > > If I'm not mistaken, private symbols are exported in the case of Alure > (see [1]). If I run dpkg-gensymbols myself on libalure1 1.1, I also get > such symbols starting with _Z.
Yes, _Z* are private, and are better to be stripped out. > Can I just create a symbols file containing only the public symbols? If > not, why not? What should I do otherwise? You can, but that won't fix the object files exporting private symbols. Instead you better suggest alure upstream to use a linker version script [1] [2], to control symbols publication. Trivial example (these are public, the rest are stripped out): LIBFOO_1 { global: public_symbol_1; public_symbol_2; local: *; }; Then you can still use dpkg-shlibdeps symbol files to determine the minimal required version of each dependency. [1] http://sourceware.org/binutils/docs/ld/VERSION.html#VERSION [2] http://www.gnu.org/s/hello/manual/gnulib/LD-Version-Scripts.html -- pub 4096R/0E4BD0AB <people.fccf.net/danchev/key pgp.mit.edu> -- To UNSUBSCRIBE, email to debian-mentors-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/201104231050.51565.danc...@spnet.net