This is the mail archive of the
libffi-discuss@sourceware.org
mailing list for the libffi project.
RE: porting to interix
- From: "rob dot oeffner at o2 dot co dot uk" <rob dot oeffner at o2 dot co dot uk>
- To: jay dot krell at cornell dot edu, robert at oeffner dot net, libffi-discuss at sources dot redhat dot com
- Date: Thu, 18 Jun 2009 12:47:47 -0400
- Subject: RE: porting to interix
- Reply-to: robert at oeffner dot net
Hi Jay,
Yes you're correct. I'm running SFU and SUA and would like to get gcc to be
supported on those platforms. The gcc compiler ports that MS provides for
interix only include C/C++ so it doesn't include libffi.
I've so far adapted the GCC4.4.0 tarball on interix to bootstrap C and C++
only but I also want the Fortran compiler i.e. libffi is a prerequisite.
I seem to have read on some newsgroup that the error messages I encounter
when trying to build libffi has to do with the binutils assembler being
invoked during the build phase: it must be ELF compatible or so. If anyone
has a clue that would be great.
Many thanks,
Rob
p.s. Building python doesn't require libffi but just a C compiler AFAIK.
Original Message:
-----------------
From: Jay jay.krell@cornell.edu
Date: Thu, 18 Jun 2009 15:54:02 +0000
To: robert@oeffner.net, libffi-discuss@sources.redhat.com
Subject: RE: porting to interix
Robert, you are aware that libffi isn't used by C or C++?
It is for Objective-c or Java or Fortran or Ada, or something, probably
Java.
Do you want more than C and C++?
I would suggest:
ftp://mirrors.kernel.org/gnu/gcc/gcc-4.4.0/gcc-core-4.4.0.tar.gz
The C compiler, and some other.
ftp://mirrors.kernel.org/gnu/gcc/gcc-4.4.0/gcc-g++-4.4.0.tar.gz
add C++ if you want.
And get the 4.2 stuff.
and
http://www.microsoft.com/downloads/details.aspx?FamilyId=93FF2201-325E-487F-
A398-EFDE5758C47F
(registration suggested, but not required)
That includes a patched gcc 4.2.
Compare with the mainline 4.2.
Apply patches to mainline 4.4.
Lobby Microsoft to submit its patches.
Also, if you have never built gcc before, I would suggest first building it
on a better supported platform, such as Linux or Cygwin.
That all said, since this is libffi-discuss :), it would be nice to have a
port.
The more the better. :)
I wonder what the deal is with Python. I ran into a problem on hppa64-hpux
building Python, because libffi isn't supported there.
So I wonder how anyone ported Python to SFU, I know there is a download of
it, I haven't looked at it yet.
- Jay
> From: robert@oeffner.net
> To: libffi-discuss@sources.redhat.com
> Date: Thu, 18 Jun 2009 11:33:09 -0400
> Subject: porting to interix
>
> Hi,
> I hope this is the right people ask with my question.
> I'm trying to port gcc4.4.0 to interix, also known as subsystem for unix
on
> Windows. As you know it includes libffi. During the bootstrap I can't seem
> to compile libffi and I wonder if you'd ahve some suggestions on how to
get
> started. The error messages are as follows:
>
> sh ./libtool --mode=compile
> /dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/./gcc/xgcc
> -B/dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/./gcc/
> -B/opt/gcc.4.4/i586-pc-interix3.5/bin/
> -B/opt/gcc.4.4/i586-pc-interix3.5/lib/ -isystem
> /opt/gcc.4.4/i586-pc-interix3.5/include -isystem
> /opt/gcc.4.4/i586-pc-interix3.5/sys-include -I.
> -I../../../gcc-4.4.0/libffi/include -Iinclude
> -I../../../gcc-4.4.0/libffi/src -g -O2 -c -o src/x86/sysv.lo
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S
> gmake[3]: Leaving directory
> `/dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/i586-pc-interix3.5/libssp'
> gmake[2]: Leaving directory
> `/dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/i586-pc-interix3.5/libssp'
> libtool: compile:
> /dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/./gcc/xgcc
> -B/dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/./gcc/
> -B/opt/gcc.4.4/i586-pc-interix3.5/bin/
> -B/opt/gcc.4.4/i586-pc-interix3.5/lib/ -isystem
> /opt/gcc.4.4/i586-pc-interix3.5/include -isystem
> /opt/gcc.4.4/i586-pc-interix3.5/sys-include -DHAVE_CONFIG_H -I.
> -I../../../gcc-4.4.0/libffi -I. -I. -I../../../gcc-4.4.0/libffi/include
> -Iinclude -I../../../gcc-4.4.0/libffi/src -Wall -g -fexceptions -g -O2 -MT
> src/x86/ffi.lo -MD -MP -MF src/x86/.deps/ffi.Tpo -c
> ../../../gcc-4.4.0/libffi/src/x86/ffi.c -DPIC -o src/x86/.libs/ffi.o
> libtool: compile:
> /dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/./gcc/xgcc
> -B/dev/fs/E/Users/oeffner/tmp/GccSource/gccbuild/./gcc/
> -B/opt/gcc.4.4/i586-pc-interix3.5/bin/
> -B/opt/gcc.4.4/i586-pc-interix3.5/lib/ -isystem
> /opt/gcc.4.4/i586-pc-interix3.5/include -isystem
> /opt/gcc.4.4/i586-pc-interix3.5/sys-include -I.
> -I../../../gcc-4.4.0/libffi/include -Iinclude
> -I../../../gcc-4.4.0/libffi/src -g -O2 -c
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S -DPIC -o src/x86/.libs/sysv.o
> yes
> checking size of void *... ../../../gcc-4.4.0/libffi/src/x86/sysv.S:
> Assembler messages:
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:39: Warning: .type pseudo-op used
> outside of .def/.endef ignored.
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:39: Error: junk at end of line,
> first unrecognized character is `f'
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:164: Warning: .size pseudo-op
used
> outside of .def/.endef ignored.
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:164: Error: junk at end of line,
> first unrecognized character is `f'
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:169: Warning: .type pseudo-op
used
> outside of .def/.endef ignored.
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:169: Error: junk at end of line,
> first unrecognized character is `f'
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:241: Warning: .size pseudo-op
used
> outside of .def/.endef ignored.
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:241: Error: junk at end of line,
> first unrecognized character is `f'
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:264: Warning: .type pseudo-op
used
> outside of .def/.endef ignored.
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:264: Error: junk at end of line,
> first unrecognized character is `f'
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:325: Warning: .size pseudo-op
used
> outside of .def/.endef ignored.
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:325: Error: junk at end of line,
> first unrecognized character is `f'
> ../../../gcc-4.4.0/libffi/src/x86/sysv.S:328: Error: junk at end of line,
> first unrecognized character is `,'
>
>
>
> Many thanks,
>
> Robert Oeffner
--------------------------------------------------------------------
mail2web LIVE ? Free email based on Microsoft® Exchange technology -
http://link.mail2web.com/LIVE