Re: AVR tool chain on Solaris

Andreas Höschler <[email protected]>
Newsgroups gmane.comp.hardware.avr.gcc
Message-ID <[email protected]>
Hi all,

> Wow, what a process!
> Thank you so much for documenting the whole thing so the rest of us
> don't have to piece it together for ourselves!

Just for the record, the following chain of commands works on Sun Solaris (10 Intel)! :-)

Best wishes,

 Andreas

*********************************************************************************************

	PREFIX=/usr/local/avr
	export PREFIX
	PATH=$PATH:$PREFIX/bin
	export PATH

We download http://ftp.gnu.org/gnu/binutils/binutils-2.20.1.tar.gz:
We download http://www.smartsoft.de/Downloads/binutils-2.20.1-patches.tar.gz

	cd /usr/src
	gunzip binutils-2.20.1-patches.tar.gz
	tar xvf binutils-2.20.1-patches.tar

	mkdir avr
	cd avr
	bunzip2 binutils-2.20.1.tar.bz2
	tar xvf binutils-2.20.1.tar
	cd binutils-2.20.1

	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-300-binutils-2.20.1-avr-size
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-301-binutils-2.20.1-avr-coff
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-302-binutils-2.20.1-new-sections
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-303-binutils-2.20.1-as-dwarf
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-304-binutils-2.20.1-dwarf2-AVRStudio-workaround
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-305-binutils-2.20.1-assembler-options
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-400-binutils-2.20.1-xmega
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-401-binutils-2.20.1-new-devices
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-402-binutils-2.20.1-avrtiny10
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-403-binutils-2.20.1-xmega128a1u-64a1u
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-404-binutils-2.20.1-atxmega16x1-32x1
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-405-binutils-2.20.1-atxmega128b1
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-406-binutils-2.20.1-atxmega256a3bu
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-407-binutils-2.20.1-at90pwm161
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-408-binutils-2.20.1-atmega16hvb-32hvb
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-409-binutils-2.20.1-atmega32_5_50_90_pa
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-410-binutils-2.20.1-attiny1634
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-411-binutils-2.20.1-atmega48pa
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-500-binutils-2.20.1-bug13789
	gpatch -p0 < /usr/src/binutils-2.20.1-patches/patch-Makefile.in

	CFLAGS="-Wno-error -g -O2" ./configure --target=avr --program-prefix="avr-" --prefix=$PREFIX --disable-nls
	make
	make install

We download https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2 from https://gmplib.org/#DOWNLOAD

	cd /usr/src
	wget --no-check-certificate https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2
	bunzip2 gmp-6.0.0a.tar.bz2
	tar xvf gmp-6.0.0a.tar
	cd gmp-6.0.0
	./configure ABI=32 --build=k6-pc-solaris2.11 
	make
	make check
	make install 

We download mpfr from http://www.mpfr.org!
We download http://www.smartsoft.de/Downloads/mpfr-3.1.2-patches.tar.gz!

	cd /usr/src/
	wget  http://www.smartsoft.de/Downloads/mpfr-3.1.2-patches.tar.gz
	gunzip mpfr-3.1.2-patches.tar.gz
	tar xvf mpfr-3.1.2-patches.tar

	bunzip2 mpfr-3.1.2.tar.bz2
	tar xvf mpfr-3.1.2.tar
	cd mpfr-3.1.2
	gpatch -N -Z -p1 < /usr/src/mpfr-3.1.2-patches/allpatches
	./configure
	make
	make check
	make install 

We download mpc from http://www.multiprecision.org/?prog=mpc&page=download.

	cd /usr/src/
	gunzip mpc-1.0.2.tar.gz
	tar xvf mpc-1.0.2.tar
	cd mpc-1.0.2
	./configure
	make
	make install 

We download http://gcc.cybermirror.org/releases/gcc-4.5.1/gcc-4.5.1.tar.bz2:
We download http://www.smartsoft.de/Downloads/gcc-4.5.1-patches.tar.gz

	cd /usr/src/
	wget http://www.smartsoft.de/Downloads/gcc-4.5.1-patches.tar.gz
	gunzip gcc-4.5.1-patches.tar.gz
	tar xvf gcc-4.5.1-patches.tar

	cd /usr/src/avr
	mkdir avrgcc
	bunzip2 gcc-4.5.1.tar.bz2
	gtar xvf gcc-4.5.1.tar
	cd gcc-4.5.1

	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-200-gcc-4.5.1-libiberty-Makefile.in
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-300-gcc-4.5.1-fixedpoint-3-4-2010
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-301-gcc-4.5.1-xmega-v14
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-302-gcc-4.5.1-avrtiny10
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-303-gcc-4.5.1-osmain
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-304-gcc-4.5.1-builtins-v6
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-305-gcc-4.5.1-avrtiny10-non-fixedpoint
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-306-gcc-4.5.1-option-list-devices
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-400-gcc-4.5.1-new-devices
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-401-gcc-4.5.1-atmega32_5_50_90_pa
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-402-gcc-4.5.1-attiny1634
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-403-gcc-4.5.1-atmega48pa
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-500-gcc-4.5.1-bug13473
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-501-gcc-4.5.1-bug13579
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-502-gcc-4.5.1-bug-18145-v4
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-503-gcc-4.5.1-avrtiny10-bug-12510
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-504-gcc-4.5.1-bug12915
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-505-gcc-4.5.1-bug13932
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-506-gcc-4.5.1-bug13789
	gpatch -p0 < /usr/src/gcc-4.5.1-patches/patch-599-gcc-4.5.1-bug46779
	cd ..
	cd avrgcc
	../gcc-4.5.1/configure --target=avr --prefix=$PREFIX --with-gnu-ld --with-gnu-as --enable-languages="c,c++" --with-gmp=/usr/local --with-mpfr=/usr/local --disable-nls --disable-libssp --with-dwarf2
	make 
	make install

We download http://download.savannah.gnu.org/releases/avr-libc/avr-libc-1.8.1.tar.bz2:

	cd /usr/src/avr
	bunzip2 avr-libc-1.8.1.tar.bz2
	tar xvf avr-libc-1.8.1.tar
	cd avr-libc-1.8.1
	./configure --host=avr --prefix=$PREFIX --build=`./config.guess`
	make
	make install

We download http://download.savannah.gnu.org/releases/avrdude/avrdude-5.2.tar.gz:

	cd /usr/src/avr
	gunzip avrdude-5.2.tar.gz
	gnutar xvf avrdude-5.2.tar
	cd  avrdude-5.2
	./configure --prefix=$PREFIX
	make 
	make install
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.