INSTALL - TinyOS Max Baker 10/19/04 This will install TinyOS from scratch with current rev's of all the tools involved. This is designed around the ability to do this INSTALL w/out being root. * To install to your own dir w/out root privilege change /usr/local/tinyos to ~/tinyos for each step. * Order Counts for the avr-* tools! ------------------------------------------------------------------------ avr-binutils ------------------------------------------------------------------------ What: Standard binutil build with target set to avr. avr support is native. From: http://ftp.gnu.org/gnu/binutils/ How: tar xvfj binutils-2* cd binutils-2* ./configure --prefix=/usr/local/tinyos --target=avr make make install cd .. export PATH=$PATH:/usr/local/tinyos/bin ------------------------------------------------------------------------ avr-gcc ------------------------------------------------------------------------ What: Standard gcc build with target set to avr. avr support is native. Help: http://www.avr1.org/pipermail/avr-gcc-list/ From: http://gcc.gnu.org/mirrors.html How: Download gcc-3.4.x Download gcc-g++ to match tar xvfj gcc-* cd gcc-3.4* ./configure --prefix=/usr/local/tinyos --disable-nls \ --languages=c,c++ --target=avr make cd .. ------------------------------------------------------------------------ avr-libc ------------------------------------------------------------------------ From: http://savannah.nongnu.org/download/avr-libc/ Help: see doc/INSTALL in distribution How: tar xvfj avr-libc* cd avr-libc* PREFIX=/usr/local/tinyos ./doconf ./domake ./domake install cd .. ------------------------------------------------------------------------ GraphViz ------------------------------------------------------------------------ From: http://graphviz.org/Download_source.html Redhat/Fedora only: up2date libpng-devel libjpeg-devel gd-devel (Might be others missing check ./configure output, must be root) Mandrake: find the same -devel RPMs and install em. How: ./configure --prefix=/usr/local/tinyos make make install ------------------------------------------------------------------------ GDB/Insight (gui for GDB) ------------------------------------------------------------------------ I didn't install this one yet. From: http://sources.redhat.com/insight/ ftp://sources.redhat.com/pub/gdb/snapshots/branch How: ./configure --target=avr --with-gnu-ld --with-gnu-as \ --prefix=/usr/local/tinyos ------------------------------------------------------------------------ Java ------------------------------------------------------------------------ From: http://java.sun.com/j2se/ How: chmod +x j2sdk-1_4_2_06-linux-i586.bin ./j2sdk-1_4_2_06-linux-i586.bin mv j2sdk1.4.2_06 /usr/local/tinyos/java ln -s /usr/local/tinyos/java/bin/* /usr/local/tinyos/bin export CLASSPATH=/usr/local/tinyos/tinyos-1.x/tools/java:. ------------------------------------------------------------------------ javax.comm ------------------------------------------------------------------------ From: http://www.rxtx.org http://java.sun.com/products/javacomm/index.jsp Help: http://wass.homelinux.net/howtos/Comm_How-To.shtml How: Download and install javax.comm for X86 Solaris tar xvfZ javacomm20-x86.tar.Z cp commapi/comm.jar /usr/local/tinyos/java/jre/lib/ext/ Download and install rxtx tar xvfz rxtx-2.0-7pre1.tar.gz cd rxtx-2.0pre1 ./configure --prefix=/usr/local/tinyos make make install ------------------------------------------------------------------------ NesC ------------------------------------------------------------------------ From:http://sourceforge.net/projects/nescc Help:see INSTALL file in archive How: tar xvfz nesc-1.1.2a.tar.gz ./configure --prefix=/usr/local/tinyos \ TOSDIR=/usr/local/tinyos/tinyos-1.x/tos make make install ------------------------------------------------------------------------ Tiny OS ------------------------------------------------------------------------ From: http://www.tinyos.net Help: http://www.tinyos.net/tinyos-1.x/doc/install-cvs.txt How: cd /usr/local/tinyos cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tinyos login cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tinyos co tinyos-1.x export TOSROOT=/usr/local/tinyos/tinyos-1.x cd tinyos-1.x make prefix=/usr/local/tinyos make install prefix=/usr/local/tinyos cd tools/java make ------------------------------------------------------------------------ Almost Done! ------------------------------------------------------------------------ $ toscheck ignore version warnings about inferior versions ;-) Add these lines to your ~/.bashrc or ~/.bash_profile or whatever. export CLASSPATH=/usr/local/tinyos/tinyos-1.x/tools/java:. export PATH=$PATH:/usr/local/tinyos/bin export TOSROOT=/usr/local/tinyos/tinyos-1.x (source the file you just modified)