This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more infromation.


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

Re: CrossGCC build script (including fixes)


Hello Enrico,


I'd like to add some more tips to the script...

1st) After creating the two symbolic links (newlib and libgloss) in the $gccdir
and build gcc, we don't need to build newlib after. The gcc Makefile will do it
for us. If we use:

# Compile gcc
mkdir -p build$gccdir
cd build$gccdir
../$gccdir/configure --target=$target --prefix=$prefix --with-newlib
--enable-languages= -v
make -w all install 2>&1 | tee make.out
cd ..

The file "make.out" will show us the building of newlib. So, we cannot do it again
after.

2nd) This configuration works only for embedded systems. If someone is trying to
build a cross-compiler for Solaris, for example, this script will not work. The
header files for Solaris isn't provided by newlib. Newlib is intented for embedded
targets only...

3rd) Cygwin is inteted for Windows NT. Running Cygwin under Windows98 could work,
but it is not guaranteed.


If someone has another tip, please give us!!!


Joćo Cadamuro Junior
LIT/CPDTT/CEFET-PR



Enrico Colombini wrote:

> After gathering information from the CrossGCC FAQ and from this list, I
> successfuly built a 68k cross-compiler (the compiler works, but I haven't
> tried out the library yet).
>
> Here is the script I used; it is not very elegant and it uses up a lot of
> space, but it seems to work fine, both on Linux redHat 6.0 and on CygWin
> (CygWin tends to slow down to a trickle on Windows 98, but that is another
> problem).
>
> It would be a good idea to delete the "build" subdirectories at the end of
> the process (or to modify the script to use a single "build" directory if
> space is tight).
>
>   Enrico
>
> --------------
>
> #!/bin/sh
>
> # Build a CrossGCC for newlib for embedded sistems
> # Enrico Colombini <erix@mclink.it> October 2000
> # It works on my RedHat 6.0 Linux box. I make no other claims.
> #
> # Thanks to Scott Howard for the CrossGCC FAQ, to Jo~ao Cadamuro
> # and to many people on the CrossGCC list for the fixes, and to
> # Marco Morocutti for cooperation and support
>
> # = 1 = Before executing this, get the sources for:
> #       binutils, gcc, newlib, gdb
> #       and unpack them in the <src> directory (say /home/erix/crossrc)
> #       (e.g. tar zxvf binutils-2_10_tar.gz)
> #       thus creating four corresponding subdirectories
>
> # = 2 = Adjust the lines below to configure for your system:
> #
> prefix=/home/erix/crossgcc # Destination directory
> target=m68k-coff # Target system
> binutilsdir=binutils-2.10 # Directories created by unpacking sources
> gccdir=gcc-2.95.2
> newlibdir=newlib-1.8.2
> gdbdir=gdb-5.0
>
> # - 3 - Execute this shell script from <src>: ./buildcross
>
> # Create destination directory
> mkdir -p $prefix
>
> # Compile binutils
> mkdir -p build$binutilsdir
> cd build$binutilsdir
> ../$binutilsdir/configure --target=$target --prefix=$prefix -v
> make all install
> cd ..
>
> # Add executables to path, they'll be needed later
> PATH=$prefix/bin:$PATH
> echo $PATH
>
> # Add symbolic links to newlib into gcc source
> cd $gccdir
> ln -s ../$newlibdir/newlib newlib
> ln -s ../$newlibdir/libgloss libgloss
> cd ..
>
> # Compile gcc
> mkdir -p build$gccdir
> cd build$gccdir
> ../$gccdir/configure --target=$target --prefix=$prefix --with-newlib
> --enable-languages= -v
> make all install
> cd ..
>
> # Compile newlib
> mkdir -p build$newlibdir
> cd build$newlibdir
> ../$newlibdir/configure --target=$target --prefix=$prefix -v
> make all install
> cd ..
>
> # Compile gdb
> mkdir -p build$gdbdir
> cd build$gdbdir
> ../$gdbdir/configure --target=$target --prefix=$prefix -v
> make all install
> cd ..
>
> ------
> Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
> Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sourceware.cygnus.com


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