Adam, Thanks, this helps a lot understanding a bit more around shared libraries; NM 2012/6/18 Adam Williamson <awilliam@xxxxxxxxxx> > On Mon, 2012-06-18 at 18:23 +0100, Nelson Marques wrote: >> Hi all, >> >> >> I have a doubt regarding the '.so's' in devel packages... From my >> understanding they go in devel packages to allow the installation of >> several packages with different versioning.... > > Not really, no. They go in -devel packages because the only time it's > actually appropriate to use a library by referring to its unversioned > name is when you're compiling another application against it. It's never > safe for anything to access a library at runtime via an unversioned name > because there is no guarantee of stability; you can't be at all sure > that the version of the library you're calling is actually capable of > doing what you're asking it to do. Since the only use of the unversioned > 'instance' (symlink, in Fedora...) of a library is in development, > naturally it goes in the devel package. We can take advantage of this in > generating dependencies, and we do, which is why it's important not to > put the .so file in a runtime package, or that runtime package will get > a bunch of automatically generated dependencies on -devel packages. > > The whole system of naming and versioning of shared libraries, and the > appropriate way of packaging them, is somewhat complex but very neat and > makes a lot of sense. It's worth reading up and understanding exactly > how it works and what it achieves. I don't know if there's a 'canonical' > reference for this, but a bit of Googling produces: > > http://static.usenix.org/publications/library/proceedings/als00/2000papers/papers/full_papers/browndavid/browndavid_html/ > > Which seems like a rather good overview. > >> Who defined this? Is this part of some standards (ex: LSB, etc) ? >> >> Is there some written documentation about this ? > > See above. Also > https://www.ibm.com/developerworks/linux/library/l-shlibs/index.html has > some good stuff. > http://netwinder.osuosl.org/pub/netwinder/docs/misc/GCC-HOWTO-html/GCC-HOWTO-6.html has more of the same, and explains the wrinkle of the 'soname' that's actually embedded in the library file quite well. > > This isn't Linux-specific, note. Most *nixes use the same format (ELF) > and the same conventions with regard to linking and versioning shared > libraries. > -- > Adam Williamson > Fedora QA Community Monkey > IRC: adamw | Twitter: AdamW_Fedora | identi.ca: adamwfedora > http://www.happyassassin.net > > -- > devel mailing list > devel@xxxxxxxxxxxxxxxxxxxxxxx > https://admin.fedoraproject.org/mailman/listinfo/devel -- Nelson Marques // I've stopped trying to understand sandwiches with a third piece of bread in the middle... -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel