2012/2/14 Brian Bockelman <[log in to unmask]>: > You might also want to add this link for shared library info: > > http://www.akkadia.org/drepper/dsohowto.pdf Yes, I have read this, it's a good one, but mainly covers how the linking is done and not what the best practices are. I will add the link nonetheless. > As an aside - ABI compatibility is an unholy nightmare in C++ in my opinion! Oh, yes it is, but the problem needs to be addressed in one way or another. And our current approach of simply ignoring it is IMO unacceptable. I haven't managed to find any decent tool that would take two libraries and compare them for binary compatibility. There is a couple on the net, but none of them works well. I had this idea to write a python script that would extract DWARF info from the binaries and compare the callstack definitions and struct memory layout, but I don't really have time to do it. Good candidate for a couple of boring Sunday afternoons ;) > It'd be nice to write the policy about loadable modules - I've noticed the OSS and GSI interfaces have migrated a bit in trunk. It would make me a lot happier if there was a more deterministic way to tell if a module is compatible with a given version of Xrootd than to load it and watch for segfaults... Yes, we have discussed this with Andy already, and he was to prepare some "magic macros" that would be interpreted after dlopening. As for the normal linking, we have promised to do proper library versioning from 3.1.0 onwards, and I will take care of it. Cheers, Lukasz ######################################################################## Use REPLY-ALL to reply to list To unsubscribe from the XROOTD-DEV list, click the following link: https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1