Date: Sat, 25 Mar 2000 11:24:44 +0200 (WET) From: Andris Pavenis To: James Ponder cc: djgpp AT delorie DOT com Subject: Re: cross-compiler on linux In-Reply-To: <20000324203339.A6364@lisa.sh2.org.uk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: dj-admin AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Well I put in gcc2952s.zip a script for building DJGPP targetted cross-compiler (in directory gnu/gcc-2.952/build.cross). I have tested it on Linux only (Slackware-7.0). Other way: I put binaries of binutils 14 March CVS version (slightly newer as bnu2951s.zip) cross-compiler binaries at http://www.lanet.lv/~pavenis/djgpp Binaries are built on Slackware-7.0 but they should work also on RedHat-6.1. Installation of Slackware package: unpack .tgz archive in root directory (cd \; tar xvf ....) run script /install/doinst.sh) Andris On Fri, 24 Mar 2000, James Ponder wrote: > Hi, > > I've completely failed to create a cross-compiler on linux using djgpp. > > I am using RedHat 6.1, gcc 2.95.2 and binutils-2.9.1. I am configuring > in the recommended way into a 'binu' and 'gcc' directory: > > drwxr-xr-x 10 root root 4096 Mar 22 22:40 binu > drwxr-xr-x 13 root root 4096 May 1 1998 binutils-2.9.1 > drwxr-xr-x 7 root root 4096 Mar 22 22:56 gcc > drwxr-xr-x 16 root root 4096 Oct 25 09:02 gcc-2.95.2 > > In the binu directory I do '../binutils-2.9.1/configure --target=i586-pc-msdosdjgpp --host=i686-pc-linux-gnu --prefix=/usr/local'. > > I then patch the te-go32.h and tc-i386.h files to avoid the symbol table > bloat problem. Then make and make install, no problem. > > Then in the gcc directory I do '../gcc-2.95.2/configure --target=i586-pc-msdosdjgpp --host=i686-pc-linux-gnu --prefix=/usr/local' > > Then I edit the Makefile to stop it testing libgcc1-test and instead touch > the file libgcc1-test (as the how-to describes). > > This is all to plan so far. > > Then... I compile and get to this, which I cannot work out how to fix: > > rootme=`pwd`/ ; export rootme; \ > CC="/home/james/djgpp/mycross/gcc/gcc/xgcc -B/home/james/djgpp/mycross/gcc/gcc/ -B/usr/local/i586-pc-msdosdjgpp/bin/ -I. -I../../../gcc-2.95.2/libio"; export CC; \ > CXX="/home/james/djgpp/mycross/gcc/gcc/xgcc -B/home/james/djgpp/mycross/gcc/gcc/xgcc -B/home/james/djgpp/mycross/gcc/gcc/ -B/usr/local/i586-pc-msdosdjgpp/bin/ -I. -I../../../gcc-2.95.2/libio -nostdinc++ -nostdinc++ -g -O2"; export CXX; \ > CONFIG_NM="i586-pc-msdosdjgpp-nm"; export CONFIG_NM; \ > /bin/sh ../../../gcc-2.95.2/libio/gen-params LIB_VERSION=2.8.0 >tmp-params.h > dummy.c:1: sys/types.h: No such file or directory > dummy.c:8: stdio.h: No such file or directory > dummy.c:9: time.h: No such file or directory > dummy.c:10: signal.h: No such file or directory > gen-params: could not invoke /home/james/djgpp/mycross/gcc/gcc/xgcc -B/home/james/djgpp/mycross/gcc/gcc/ -B/usr/local/i586-pc-msdosdjgpp/bin/ -I. -I../../../gcc-2.95.2/libio -E on dummy.c > make: *** [_G_config.h] Error 1 > make[1]: Leaving directory `/home/james/djgpp/mycross/gcc/i586-pc-msdosdjgpp/libio' > make: *** [all-target-libio] Error 2 > > Someone must have encountered this. > > /usr/local/i586-pc-msdosdjgpp: > drwxr-xr-x 5 root root 4096 Mar 21 23:38 . > drwxr-xr-x 19 root root 4096 Mar 21 22:52 .. > drwxr-xr-x 2 root root 4096 Mar 22 22:50 bin > drwxr-xr-x 9 root root 4096 Mar 21 23:38 include > drwxr-xr-x 3 root root 4096 Mar 21 23:39 lib > > (bin contains nm, strip, ar, ranlib, as, ld, stubify (which I compiled)) > (lib contains ldscripts, crt0.o djgpp.djl etc) > (include contains all the djgpp include files, including the files dummy.c > is trying to find) > > I really hope someone will reply telling me I'm being stupid and have > missed something. > > > Best wishes, James > > -*- James Ponder -*- james AT squish DOT net -*- http://www.squish.net/ -*- >