Setting up your computer

Alternatively, use a prebuild Virtual Box image.

Software to be set up
The following instructions are suited for setting up development in Ubuntu.

Install Dependencies
These packages (and their dependencies) should be installed via the Synaptic Package Manager
 * build-essential
 * libmpfr1ldbl
 * git-core
 * openjdk-6-jdk
 * zlib1g-dev

Aldebaran SDK and Toolchain
The Naoqi SDK and the cross-compiliation toolkit are available from the Crayfish server:

scp user@crayfish.coral.cs.cmu.edu:/repo/CMRoboBits/nao-cross-toolchain-1.10.52+protobuf.tar.gz. sudo tar xfz nao-cross-toolchain-1.10.52+protobuf.tar.gz -C /opt/

scp user@crayfish.coral.cs.cmu.edu:/repo/CMRoboBits/naoqi-sdk-1.10.52-linux.tar.gz. sudo tar xfz naoqi-sdk-1.10.52-linux.tar.gz -C /opt/ where user is your username

Choregraphe Environment
scp user@crayfish.coral.cs.cmu.edu:/repo/CMRoboBits/choregraphe-suite-1.10.52-linux.tar.gz. sudo tar xfz choregraphe-suite-1.10.52-linux.tar.gz -C /opt/ sudo ln -s /opt/choregraphe-suite-1.10.52-linux/choregraphe /usr/bin/choregraphe

CMurfs Framework
Use git to check out the repository from crayfish to your computer. You will need to clone the primary repository onto your machine:

git clone ssh://user@crayfish.coral.cs.cmu.edu/repo/CMRoboBits CMRoboBits

This creates a subdirectory CMRoboBits at your current directory and checks out all the code there

This repository is solely for you to download the code and receive updates throughout the semester. Read on how to create your own repository.

Setting up your environment
Define the environment variables to define the variables permanently, export CTC_DIR=/opt/ctc export AL_DIR=/opt/naoqi-sdk-1.10.52-linux export CMURFS_DIR=~/CMRoboBits
 * AL_DIR - point to the NaoQi SDK (/opt/naoqi-sdk-1.10.52-linux if you followed the instructions above)
 * CTC_DIR - point to the CTC (/opt/ctc if you followed the instructions above)
 * CMURFS_DIR - point to the code (typically ~/CMRoboBits)
 * Open ~/.bashrc in your favorite text editor and add the following to the end
 * Then type source ~/.bashrc in the terminal

Add Robots to /etc/hosts
192.168.5.51 apollo 192.168.5.52 ares 192.168.5.53 artemis 192.168.5.54 athena 192.168.5.55 asteria 192.168.5.56 aura
 * Open /etc/hosts in your favorite text editor (with super-user privileges, e.g. sudo vi /etc/hosts) and add the following

Configure Network

 * Open the Network Connections configuration window by clicking System>>Preferences>>Network Connections.
 * On the Wired tab, click Add, and then change to the IPv4 Settings tab.
 * Change Method to Manual
 * Click the Add button to add a new address, and then enter 192.168.5.XXX, where XXX is any number between 60-254.
 * Click Save and then click Close.

Install Google Protocol Buffers
The framework uses Google Protocol Buffers ("protobufs") to communicate between some components and to store log files. To install it from the repository: cd CMRoboBits/misc/protobuf ./configure_local make sudo make install It is important to use the version from the repository, so that the same version is used throughout.

Eclipse (optional)
If you prefer to use the Eclipse IDE, you can set it up by doing the following: sudo apt-get install eclipse-cdt Import the project into Eclipse


 * Click File->Import...->General->Existing Projects into Workspace
 * Browse to the directory where the code is checked out (which will be something like ~/CMRoboBits/)
 * Click Finish