On Sun, May 18, 2003 at 07:43:30PM -0500, Steve Langasek wrote: > Hello, > > On Sun, May 18, 2003 at 04:26:35PM -0400, Jack Howarth wrote: > > Looking at the number of shared libraries in Debian which prelink > > has revealed to have undefined non-weak symbols (through incorrect > > linkage), I think we need an amendment to clarify Debian policy on > > such symbols. In a nut-shell, the policy should be that "No shared > > library shall contain undefined non-weak symbols unless it is known > > such symbols will be provided by the program dlopen'ing said library". > > Matching this policy, dh_shlibdeps should be performing a 'ldd -d -r' > > on each library in a package and issuing a warning if undefined > > symbols are detected. The warning issued by dh_shlibdeps should be > > simply that "Additional linkage *may* be required for this shared > > library". > > Do you believe the wording proposed in bug #191369 captures your intent, > or is something further needed? I'm not entirely certain how the > requirement "undefined non-weak symbols" maps onto the tools I'm > familiar with; running 'nm' on a shared library certainly gives a list > of undefined symbols, but gives no indication as to whether they're > weak.
That's not where the symbol's undefinedness is relevant, because it could be provided by a shared library which is explicitly linked. Using ldd as above recursively checks all DT_NEEDED libraries for definitions. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer

