This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Cygwin Cross compiler on Linux

FWIW, AFAIK cgf uses a cross-compiler to build mostly everything he builds 
for the Cygwin distri (but cgf, please correct me if I'm wrong and/or 
you've changed your habits).

There is a small patch to be applied to vanilla gcc to have it be 
compatible with Cygwin's gcc (double alignment in structures). There's 
been a discussion on that only last month. Because of this (and other) 
reason(s), you really should use Cygwin CVS to build this.

cgf posted minimalist instructions recently (Jan or Feb, I don't recall - 
but you can search the ml archives for it) that tells you how to do it, 
with an explicit warning that he wasn't going to help out on it.

note the last paragraph:
> Before someone asks, I built the cross compiler myself, I'm not willing
> to make it available for general distribution, and I'm not willing to
> act as a mentor to other enterprising souls who want to do the same
> thing.  There are surely web sites out there which deal with this issue.



On Thu, 27 Mar 2003, Tim Renner wrote:
> I was wondering if anyone has successfully built a Cygwin gcc cross compiler 
> (Host=i686-suse-linux, Target=i386-pc-cygwin) under Linux, and if so, could 
> you post or email me the steps you took to do it...  Here's my list of 
> steps...
> Snagged
> gcc-2.95.3.tar.gz
> binutils-<newest>.tar.gz
> newlib-<newest>.tar.gz
> unpacked them all into my cross directory...
> cd binutils
> configure --prefix=$HOME/cross -target=i386-pc-cygwin -v
> make all install
> cd ..
> export PATH=$HOME/cross/bin:$PATH
> Brought over /lib, /usr/lib and /usr/include from my Cygwin machine,
> put in $HOME/cross/i386-pc-cygwin/lib, ...-cygwin/usr/lib, and 
> ...-cygwin/include respectively...
> cd gcc-2.95.3
> configure --prefix=$HOME/cross --target=i386-pc-cygwin --with-gnu-as 
> --with-gnu-ld --with-newlib 
> --with-headers=$HOME/cross/newlib-<newest>/newlib/libc/include
> make all install
> (Fixed header conflicts till make all install worked ;)
> Now, when I try to compile this test program (Well, after copying some 
> libraries from $HOME/cross/i386-pc-cygwin/lib/w32api into the lib dir, I get 
> this error...
> Ender:/tmp # cat test.cpp
> #include <iostream>
> void main()
> {
> 	cout << "This is my test program!" << endl;
> }
> Ender:/tmp # i386-pc-cygwin-g++ -o test.exe test.cpp
> /root/cross/i386-pc-cygwin/lib/libcygwin.a(pseudo-reloc.o)(.text+0x49): 
> undefined reference to `__RUNTIME_PSEUDO_RELOC_LIST__'
> /root/cross/i386-pc-cygwin/lib/libcygwin.a(pseudo-reloc.o)(.text+0x51): 
> undefined reference to `__RUNTIME_PSEUDO_RELOC_LIST_END__'
> collect2: ld returned 1 exit status
> Ender:/tmp #
> I can't find a library on my cygwin install that has those symbols defined 
> anywhere...
> I'm currently trying to build the Cygwin version of gcc-2.95.3, but havn't 
> been able to get through that build yet... any help would be much 
> appreciated ;)
> The most frustrating part is that I had this working at one point... I just 
> don't remember how I did it :(
> Thanks,
> -Tim
> _________________________________________________________________
> The new MSN 8: advanced junk mail protection and 2 months FREE*  
> --
> Unsubscribe info:
> Bug reporting:
> Documentation:
> FAQ:         

Unsubscribe info:
Bug reporting:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]