This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
RE: x86_64-pc-mingw32
- From: "Rupert Wood" <me at rupey dot net>
- To: "'funchlady'" <finchlady888 at hotmail dot com>
- Cc: <gcc-help at gcc dot gnu dot org>
- Date: Fri, 2 Mar 2007 10:12:25 -0000
- Subject: RE: x86_64-pc-mingw32
- References: <9262940.post@talk.nabble.com>
funchlady wrote:
> I built a cross compiler, i.e., x86_64-pc-mingw32-gcc (release
> 4.1.2, I modified ASM when necessary) on a x86_64-linux, and then I
> applied x86_64-pc-mingw32-gcc to generate binaries of w32api (3.8)
> and mingw-runtime (3.11, I modified ASM when necessary).
If you're trying to port mingw to x86_64 you should probably talk to this guy
http://gcc.gnu.org/ml/gcc/2007-02/msg00545.html
if you haven't already.
At first glance the problem is that export symbols in the .def files are wrong when you're compiling 64-bit - they're hard-coded with the argument length (as per stdcall) for 32-bit pointers. There's a further problem in that the w32api headers are missing some uses of DWORD_PTR so they won't compile correctly for 64-bit anyway or at least some of the structures will be wrong. I guess you'll need to fix all of this: you'll have to audit the headers against Microsoft's own platform SDK
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
(old link but redirects to the newer, much longer one) for LONG_PTR, ULONG_PTR and DWORD_PTR - and possibly some more similar types, I can't remember - rebuild w32api and then check the symbols in the .a files against the .def files to see which ones you'll need to edit for 64-bit.
Or you could try Microsoft's own 64-bit import libraries from the platform SDK download: it is a free download but might be awkward to extract if you don't have a Windows machine handy: I can't swear that Microsoft's .libs are compatible with mingw's linker, but I can't think of a good reason why not.
Good luck!
Rup.
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________