|
From: | Charles Wilson |
Subject: | Re: [PATCH] cygwin sharedlib build fixes, terminfo |
Date: | Sun, 03 Aug 2003 17:08:40 -0400 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 |
Thomas E. Dickey wrote:
(but the point was that there's more work to do than simply applying the patch - last night I also tried the same patch with the automake 1.4.3
^ libtool?
that I have for testing, and it didn't build with that either).
As I said, libtool-1.4.3 does not explicitly support any language other than C, although it sometimes works by accident. There's this whole algorithm where libtool intuits what std libs are included by the specified compiler, and then calls ld directly with --no-std-libs, but explicitly adds the intuited stdlibs back to the command line.
There are good reasons for this behavior -- but the behavior doesn't really mesh well with C++ (especially as implemented in libtool-1.4.3).
One of the issues with C++ is that there are other link objects that need to be handled but which are not included in the std (c++) libs. Sometimes they are bare .o's, and sometimes the code is generated on the fly by the c++ compiler. (static initializers, etc) So substituting the use of the linker directly would be a bad idea...
Anyway, all of this is why it took two years (in volunteer-labor time...) to get libtool-1.5 out the door. The multilanguage support required architectural changes; it's not surprising that using libtool-1.4.3 to compile c++ libraries is, er, fragile.
-- Chuck
[Prev in Thread] | Current Thread | [Next in Thread] |