2010/1/29 Gabriel M. Beddingfield <[email protected]>: > > > On Fri, 29 Jan 2010, Daniel Roßberg wrote: > >> many programs using these. And there is my point: The programs >> memorized the Python, TCL, etc. library version they were build with. >> For example you may use the package manager of your choice an look at >> the dependencies section there. This section won't ask the installed >> Python, TCL etc. for its version but a manifest file belonging to the >> program. > > Not exactly. When they load the .so-file (equiv. of a DLL) there is one or > more API versions (integer) encoded in the library file. ld looks for a > library with the right name and internal API version to load. The API > version must change whenever your binary API changes (e.g. you add a member > to a class, you remove a function, you change a function parameters, etc.). > Read the libtool manual for details on this. > > So, they don't look into a manifest file, it's encoded in the so-file.
We have probable a misunderstanding here. In the mentioned paragraph I wasn't talking about source and object files but about executable and .deb files. I.e. if I install a .deb file all its dependencies are mentioned in this file without access to the .so files. However, you made an interesting point there: "ld looks for a library with the right ... internal API version to load." Where does ld know "the right internal API version" from? (I hope the answer isn't "libtool". BTW, "man libtool" gives a rather short explanation.) >> Now I want to do something similar with BRL-CAD. How do I get the >> dependency/compatibility numbers for my manifest file? (I don't >> really have a manifest file but something similar.) >> >> BTW, this is a problem on MS Windows only. "make install" copies the >> brlcad_config.h too which contains the PACKAGE_STRING and >> PACKAGE_VERSION defines. > > I'm not sure what the Windows equivalent of libtool is. Maybe libtool's > versioning works on Windows, too? Anyway, on Windows I think this problem > is called "DLL Hell," and searching that term (and its solutions) might > point you in a good direction. > > HTH, > Gabriel > ------------------------------------------------------------------------------ > The Planet: dedicated and managed hosting, cloud storage, colocation > Stay online with enterprise data centers and the best network in the > business > Choose flexible plans and management services without long-term contracts > Personal 24x7 support from experience hosting pros just a phone call away. > http://p.sf.net/sfu/theplanet-com > _______________________________________________ > BRL-CAD Developer mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/brlcad-devel > > ------------------------------------------------------------------------------ The Planet: dedicated and managed hosting, cloud storage, colocation Stay online with enterprise data centers and the best network in the business Choose flexible plans and management services without long-term contracts Personal 24x7 support from experience hosting pros just a phone call away. http://p.sf.net/sfu/theplanet-com _______________________________________________ BRL-CAD Developer mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/brlcad-devel
