Difference between revisions of "Installing from SCM"
m (Installing from SVN/GIT moved to Installing from SCM: TinyOS is now officially using GIT, therefore there is no SVN anymore) |
(mention github) |
||
Line 1: | Line 1: | ||
− | NOTE: It is highly recommended to remove the system-wide tinyos-tools package when using the TinyOS from | + | NOTE: It is highly recommended to remove the system-wide tinyos-tools package when using the TinyOS from a SCM such as GIT. |
Git repositories mirroring the TinyOS CVS repository can be found at: | Git repositories mirroring the TinyOS CVS repository can be found at: | ||
− | * <code>git clone | + | * <code>git clone https://github.com/tinyos/tinyos-main.git</code> [https://github.com/tinyos/tinyos-main official github] |
* <code>git clone git://github.com/tyll/tinyos-2.x-contrib.git</code> [http://github.com/tyll/tinyos-2.x-contrib TinyOS 2.x contrib github] | * <code>git clone git://github.com/tyll/tinyos-2.x-contrib.git</code> [http://github.com/tyll/tinyos-2.x-contrib TinyOS 2.x contrib github] | ||
Line 35: | Line 35: | ||
== Checkout the TinyOS 2.x source tree == | == Checkout the TinyOS 2.x source tree == | ||
− | Checkouts from TinyOS | + | Checkouts from TinyOS GIT repository are read-only. |
cd ~ | cd ~ | ||
mkdir -p local/src | mkdir -p local/src | ||
cd local/src | cd local/src | ||
− | + | git clone https://github.com/tinyos/tinyos-main.git tinyos-2.x | |
− | |||
− | |||
− | |||
− | |||
== Compile the TinyOS tools == | == Compile the TinyOS tools == |
Latest revision as of 12:36, 15 March 2013
NOTE: It is highly recommended to remove the system-wide tinyos-tools package when using the TinyOS from a SCM such as GIT. Git repositories mirroring the TinyOS CVS repository can be found at:
git clone https://github.com/tinyos/tinyos-main.git
official githubgit clone git://github.com/tyll/tinyos-2.x-contrib.git
TinyOS 2.x contrib github
Contents
Enable the tinyos tools repository
Stanford hosts the primary Debian/Ubuntu tools repository.
The TinyOS Ubuntu pool is the same across all current distributions. So specifing "lucid" works as the distribution specifier.
sudo echo "deb http://tinyos.stanford.edu/tinyos/dists/ubuntu lucid main" >> /etc/apt/sources.list # or sudo apt-add-repository "deb http://tinyos.stanford.edu/tinyos/dists/ubuntu lucid main"
sudo apt-get update
Install the nesc compiler
sudo apt-get install nesc
Install the crosstools
Debian MSP430:
sudo apt-get install msp430-tinyos
Debian AVR:
sudo apt-get install avr-binutils-tinyos msp430-gcc-tinyos msp430-libc-tinyos
Checkout the TinyOS 2.x source tree
Checkouts from TinyOS GIT repository are read-only.
cd ~ mkdir -p local/src cd local/src git clone https://github.com/tinyos/tinyos-main.git tinyos-2.x
Compile the TinyOS tools
sudo apt-get install automake cd tinyos-2.x/tools ./Bootstrap ./configure --prefix=$HOME/local make all make install
A few ENTERs will be required by the last two commands.
Set the environment variables
Add the following to .profile (or .bash_profile or .bashrc depending on your system):
export PATH=$HOME/local/bin:$PATH export TOSROOT=$HOME/local/src/tinyos-2.x export TOSDIR=$TOSROOT/tos export MAKERULES=$TOSROOT/support/make/Makerules export CLASSPATH=$TOSROOT/support/sdk/java/tinyos.jar:. export PYTHONPATH=.:$TOSROOT/support/sdk/python:$PYTHONPATH export PATH=$TOSROOT/support/sdk/c:$PATH