This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
I finished building the toolchain under cygwin with the following libraries/sequence : Tars weree in /GccTars/ 1) Extract all cygwin$ target=powerpc-eabi cygwin$ prefix=/ppc cygwin$ src_root=~/gnu cygwin$ mkdir $src_root cygwin$ cd $src_root cygwin$ tar xf /GccTars/binutils-2.14.tar cygwin$ tar xf /GccTars/newlib-1.11.0.tar cygwin$ tar xf /GccTars/gcc-3.3.2.tar cygwin$ tar xf /GccTars/gdb-6.0.tar cygwin$ mkdir -p $src_root/BUILD/binutils cygwin$ cd $src_root/BUILD/binutils cygwin$ $src_root/binutils-2.14/configure --with-included-gettext --target=$target --prefix=$prefix -v cygwin$ make cygwin$ make install export PATH=$prefix/bin:$PATH 2) Build a bootload GCC cygwin$ mkdir $src_root/BUILD/gcc cygwin$ cd $src_root/BUILD/gcc cygwin$ $src_root/gcc-3.3.2/configure --enable-languages=c,c++ --with-included-gettext --enable-shared --enable-threads --target=$target --prefix=$prefix --with-newlib -v cygwin$ make LANGUAGES=c all-gcc cygwin$ make LANGUAGES=c install 3) Build the libraries cygwin$ mkdir $src_root/BUILD/newlib cygwin$ cd $src_root/BUILD/newlib cygwin$ $src_root/newlib-1.11.0/configure -target=$target -prefix=$prefix -v cygwin$ make cygwin$ make install 4) Build the Full GCC cygwin$ cd $src_root/BUILD/gcc cygwin$ make cygwin$ make install 5) Build GDB cygwin$ mkdir $src_root/BUILD/gdb cygwin$ cd $src_root/BUILD/gdb cygwin$ $src_root/gdb-6.0/configure --target=$target --prefix=$prefix cygwin$ make cygwin$ make install No errors, of course many warnings. I used the same method successfully on Solaris 8 as well. However, the reason I am responding to this post is that I experienced similar problems to those that Hermann-Simon Lichte experienced on my first attempt (about 2 weeks ago). I am using exactly the same tar files, so it was clearly due to the command line options that I used. I eventually got the first build to work by using a number of hacks but I didn't document exactly what I did. It was my first attempt at building the tool chain and I made quite a few mistakes (half the steps were compensating for other incorrect steps). I would recommend starting over with clean directories. I also updated by cygwin environment between attempts. I don't think this mattered but it might have. The method above is a slightly modfified version of: http://www.nanotech.wisc.edu/~khan/software/gnu-win32/cygwin-to-newlib-cross -howto.txt I hope this helps. Good Luck, Derek -----Original Message----- From: crossgcc-owner@sources.redhat.com [mailto:crossgcc-owner@sources.redhat.com] On Behalf Of Kai Ruottu Sent: Friday, February 06, 2004 8:44 AM To: Hermann-Simon Lichte Cc: crossgcc@sources.redhat.com Subject: Re: Building und/libiberty for powerpc-eabi cross compiler fails due to linker error On 3 Feb 2004 at 13:41, Hermann-Simon Lichte wrote: > I am trying to build a powerpc-eabi cross compiler on an > i686-pc-cygwin > host. I followed Bill Gatliff's tutorial, however, building the complete > cross compiler fails. > > I am using binutils-2.14, gcc-3.3.2 and newlib-1.11.0. Compiling > binutils, the bootstrap gcc, and newlib isn't a problem. > > When compiling the complete gcc, 'make all' fails because the compiler > does not know what target it should generate executables for. Is somewhere any evidence that the usual way of building newlib- based GCCs doesn't produce working libraries with the generic newlib headers? Ie. when one copies the '.../newlib/libc/include' into one's chosen $prefix/$target, makes the necessary symlinks to be seen in the $prefix/$target/sys-include, configures GCC using the '--with-newlib', builds (almost) everything coming with the GCC sources and installs the stuff. Then builds and installs newlib. The PowerPC target(s) replace some 'generic' headers with the PPC-dependent ones with AltiVec-function protos and such, but do these really have any influence to libgcc, libiberty and libstdc++ ? Most targets use the generic headers as they are, so building all the newlib-based GCCs in the same way could be the rule. Someone with a quick PC could experiment and see whether the generic headers could produce different results than when the powerpc-specific headers are used. Ok, in this case it was weird that the '--with-newlib' was not used in the GCC configure although newlib was the C library and creating executables with the defaults doesn't succeed. BTW, the bug with the '__end' is in all those '.ld' files for PPC coming with newlib-1.11.0... Cheers, Kai ------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com ------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |