This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: mods for compiling perl && perl common packages
- To: Ed Peschko <ed_peschko at csgsystems dot com>
- Subject: Re: mods for compiling perl && perl common packages
- From: Mumit Khan <khan at xraylith dot wisc dot edu>
- Date: Fri, 31 Jul 1998 19:07:14 -0500 (CDT)
- Cc: egcs at cygnus dot com
On Fri, 31 Jul 1998, Ed Peschko wrote:
>
> Well, not to be arbitrarily contrary, but why take the discussion of this list?
I was just trying to point out that you might benefit from the people in
the gnu-win32 list, since the problems I allude to have more to do with
braindead-ness of the platform than to do with the compiler per-se.
>
> I mean, you yourself say that it causes 'severe problems' - and one of my hopes
> for compiling perl w/GCC was to take microsoft out of the loop. And as you
> say, most of the active contributors are on this list, so they are the ones
^^^^ (I said the other list)
> who would be able to fix the problem.
EGCS as a compiler works very well under Win32, but the weak point is the
set of replacement system headers that is part of a different project.
This is the project that needs to mature considerably before MS can be
totally taken out of the loop (eg., lots of headers are missing, and most
of the existing headers are missing declarations). I meant to point out
that most of the active contributors are mostly in the *other* list
(gnu-win32 list, not egcs), so you might benefit from discussion there.
>
> So what VC++ extensions does gcc w/ecgs have problems with? And what work is
> being done to support them? And if I so happen to not be able to compile an
> extension with GCC, can I mix and match VC++ libraries and GCC libraries?
MS uses the following extensions heavily in it's headers:
- anonymous structs/unions in C headers
- push/pop packing attributes (SysV pragma with a twist)
- attributes all over the place (C++ parser has serious problems with
this particular issue, and almost all the headers can make it choke).
- and a few other misc ones
The other biggie was the DLL import/export, but that was recently added
and will be part of egcs-1.1.
I have patches for most of these extensions from various contributors, but
I don't know when/if these will get into the standard egcs/fsf releases.
All of these are non-standard extensions, and it's not going to easy to
convince that the EGCS/FSF maintainers that these should be in the
standard releases (badly maintained non-standard extensions tend to cause
some serious headache ...).
Linker is a different story altogether. The GNU binary utilities currently
cannot handle MS .lib formats due to a variety of reasons; again, I have
patches, but these *will not* get incorporated since the person who
contributed these does not want to assign copyright or sign waiver, but
rather has put them in the public domain. With standard binutils-2.9.1
release, you cannot *reliably* mix MSVC + GNU object/archive files. Of
course you can't mix C++ files from VC++ and GNU C++ for obvious reasons.
Regards,
Mumit