1) Install dependency packages assuming ubuntu derivative.
sudo apt-get update sudo apt-get install build-essential freeglut3-dev libboost-all-dev xterm libtiff4-dev libpng12-dev libgsl0-dev subversion bzr cmake-curses-gui libxft-dev libxinerama-dev fluid default-jre
2) Downloads:
cd ~/svn co https://mv-ezproxy-com.ezproxyberklee.flo.org/svn/moos-ivp-aro/releases/moos-ivp-13.2 moos-ivpcd ~/ bzr co lp:goby cd goby sudo ./DEPENDENCIES debian cd ~/ svn checkout https://hovergroup.googlecode.com/svn/trunk/ivp-extend hovergroup-extend
3) Build:
export CXX='/usr/local/lib/distcc/arm-linux-gnueabi-g++-4.4' export CC='/usr/local/lib/distcc/arm-linux-gnueabi-gcc-4.4' export DISTCC_HOSTS=192.168.1.4 export DISTCC_POTENTIAL_HOSTS=192.168.1.4 cd ~/moos-ivp/MOOS/MOOSCore cmake -D DISABLE_NAMES_LOOKUP=ON -D USE_ASYNC_COMMS=ON . make -j2 cd ../MOOSEssentials cmake . make -j2 cd ../MOOSGeodesy cmake . make -j2 cd ../MOOSToolsUI cmake -D BUILD_GRAPHICAL_TOOLS=OFF . pump make -j2 cd ~/moos-ivp/ivp/src cmake -D IVP_BUILD_GUI_CODE=OFF . pump make -j2 cd ~/goby cmake -D build_apps=OFF . make -j2 cd ~/hovergroup-extend/trunk cmake . make -j2 cd ~/hovergroup-extend/josh cmake . make -j2
5) Download and install goby
cd ~/ bzr co lp:goby cd goby sudo ./DEPENDENCIES ubuntu cmake -D build_apps=OFF . make -j4
6) Download and build hovergroup svn:
cd ~/ svn checkout https://hovergroup.googlecode.com/svn/trunk/ hovergroup cd ~/hovergroup/ivp-extend/trunk cmake . make -j4
7) Add executable directories to your path (replacing "josh" with your username). Add the following lines to your ~/.bashrc file.
HOME_DIR="/home/josh" IVP_DIR=${HOME_DIR}/moos-ivp MOOS_DIR=${IVP_DIR}/MOOS PATH=$PATH:${MOOS_DIR}/MOOSCore/bin:${MOOS_DIR}/MOOSEssentials/bin:${MOOS_DIR}/MOOSToolsUI/bin PATH=$PATH:${IVP_DIR}/bin HOVERGROUP_DIR=${HOME_DIR}/hovergroup/ivp-extend PATH=$PATH:${HOVERGROUP_DIR}/trunk/bin
8) Download the latest version of Eclipse CDT from http://www.eclipse.org/cdt/downloads.php and extract to a location of your choosing (no installation required). After starting Eclipse you'll need to add the projects and set their references for the indexer to work.
First I would recommend closing some of the extra windows around the screen. Almost all of the side tabs can be removed; the only ones we need are the project explorer and the console, which can be minimized when we're not building code. Once you have things arranged the way you like you should save your perspective under Window ->
To import a project go to File -> New -> Makefile Project with Existing Code. For each of the following projects you'll need to select the folder location, name the project, and set the tool-chain to Linux GCC. After creating projects you will also need to set their references to other projects. Do this by right clicking on the project in the project explorer and selection properties, then select "project references" on the left.
Name |
Path on Disk |
Project References |
---|---|---|
MOOSCore |
~/moos-ivp/MOOS/MOOSCore |
none |
MOOSEssentials |
~/moos-ivp/MOOS/MOOSEssentials |
MOOSCore |
MOOSGeodesy |
~/moos-ivp/MOOS/MOOSGeodesy |
MOOSCore |
MOOSToolsUI |
~/moos-ivp/MOOS/MOOSToolsUI |
MOOSCore |
MOOS-IvP |
~/moos-ivp/ivp/src |
MOOSCore |
Goby |
~/goby |
none |
hovergroup |
~/hovergroup/ivp-extend/trunk |
MOOSCore |
your personal folder |
~/hovergroup/ivp-extend/josh |
MOOSCore |
Some additional changes you should make in eclipse:
- Use parallel make for large projects (moos-ivp especially) by changing the build command to "make -j4" in project properties -> C/C++ Build
- Editor configuration under Window -> Preferences
- Under General -> Editors -> Text Editors check "Insert spaces for tabs"