|
From: Keith M. <kei...@to...> - 2006-03-23 14:41:13
|
Earnie Boyd wrote, quoting Julien Lecomte: >> The only caveat I found is that the specs file needs to be reviewed >> if using `gcc -Wl,-dn' or `gcc -Wl,-dy' (ie, linking only to >> static/shared libraries) >> The fix is simple: change every occurance of -lfoo to -lfoo.dll if >> the library had been renamed (eg: libkernel.a to libkernel.dll.a) > > The system libraries are always a .dll; one can use ``nm'' to discover > if the library is an import library or static library without too much > effort. The .dll.a extention was added at a later date than the start > of MinGW and we've just not taken an initiative to change the name of > the libraries. Changing the name of the libraries would also mean that > we would need to remove existing libraries with the old name when > someone performs an upgrade. That isn't really accomplished easily > with a tarball so we have decided to leave the name the with just a .a > extention. Something of a cop-out, perhaps, for surely it should be possible to automate the entire process with a script -- would you care to provide and maintain one, Julien? While it would certainly be nice to adopt a convention, where static libraries are named `libNAME.a' and import libraries are distinguished by being named `libNAME.dll.a', this can never be more than simply a convention, rather than a hard and fast rule. As Julien has noted, MinGW is already well capable of supporting such a convention. However, Earnie has touched on a real problem, arising from the need for us to continue to operate within a legacy infrastructure. The problem with providing a script to automate the renaming process is that the onus to invoke it appropriately lies entirely with the user; it is completely beyond our control. I agree with Earnie; it is best for us to retain the legacy infrastructure. If any user wishes to adopt an alternative convention, they are free to do so, AT THEIR OWN RISK, and go ahead and rename their installed libraries as Julien has suggested. If Julien, or anyone else, would like to provide a script to automate the renaming procedure, then that is fine; however, I would be most reluctant to support its use, as an official MinGW installation option. Regards, Keith. |