On Wed, Sep 27, 2006 at 12:50:07PM +0100, Mark Brown wrote: > As a first approximation perhaps libraries with constructors or > destructors could be assumed to always be required? That would be more > conservative than required but perhaps so conservative as to be useless. The problematic sections seem to be .init and .fini. There are sections called .ctors and .dtors, but they aren't marked as executable. However both .init and .fini seem to be always present, and include code too. To see the sections in the ELF file: readelf -S <file> To see the code in .init and .fini: objdump -D <file> | sed -n -e '/\.init\|\.fini/,/^Dis/p' What I could imagine was some sort of opt-in system, where library maintainers could put a special marker into their -dev packages indicating "yes, please remove me if I'm not needed, it's save". I'm not sure where to put it inside the -dev package though, perhaps in an /usr/share/debhelper/stripdeps/<pkgname> file? Cheers, Christian Aichinger
Attachment:
signature.asc
Description: Digital signature