ICub software/Archive
This is just an archive of old notes, kept for reference. Go back to iCub software.
Environment variables
Windows environment variables
Typical choices are:
YARP_ROOT
= C:/yarpYARP_DIR
= C:/yarp/buildICUB_ROOT
= C:/icub-mainICUB_DIR
= C:/icub-main/build
YARP
Installing yarp in Windows
Note: all environment variables should have '/' and NOT '\' (except in the PATH
enviroment variable). The directories do not need to be the same as the ones presented here, just be sure to alter the environment variables correctly.
- Download ACE and GSL from http://eris.liralab.it/iCub/downloads/packages/windows/msvc8/ ; unzip them to a directory of your choice and remember it.
- If you want GUIs, download GTKMM from http://live.gnome.org/gtkmm/MSWindows and use the installer.
- Create the environment variables
ACE_ROOT
,GTK_BASEPATH
,GTKMM_BASEPATH
,GSL_DIR
as follows:ACE_ROOT
is ACE dir (e.g., C:/ace_wrappers).GTK_BASEPATH
andGTKMM_BASEPATH
is GTKMM dir (C:/gtkmm).GSL_DIR
is GSL dir (C:/gsl-1.8).
- Add this to the
PATH
environment variable:%ACE_ROOT%/lib
(important: make sure you put it at the beginning of thePATH
environment variable, to avoid conflicts with other existing ACE versions on the system) - Make sure that
YARP_ROOT
andYARP_DIR
are correctly set. - Add this to the
PATH
enviroment variable:%YARP_DIR%/bin/Release
(and/orDebug
). Note: these directories will be created later - Use CMake to build the YARP SLN files. Point the source code to the yarp dir, and build to the yarp/build dir (which will be created now).
- In CMake, check the flags CREATE_DEVICE_LIBRARY_MODULES, CREATE_LIB_MATH and, optionally, CREATE_GUIS (don't uncheck anything!).
- Click: Configure, Configure, Generate.
- Go to
YARP_DIR
and open YARP.sln with Visual Studio - Go to Build->Batch Build
- Check ALL_BUILD (Release and/or Debug) and Build!
Getting the yarp repository in Linux
To use this repository through SVN, you will have to do a new checkout (checkouts prior to March 2013 are not compatible):
svn co https://github.com/robotology/yarp/trunk yarp
iCub
Browsing the iCub repository online
icub-contrib (obsolete), icub-firmware:
http://sf.net/p/robotcub/code/HEAD/tree/trunk/iCub/ (pretty interface, ability to show diffs)
or
https://svn.code.sf.net/p/robotcub/code/trunk/iCub/ (simple and raw interface, faster to load)
Installing iCub in Windows
- Make sure that
ICUB_ROOT
andICUB_DIR
are correctly set. - Install OpenCV (1.0 works, not sure about newer versions), available at http://sourceforge.net/projects/opencvlibrary/files/ . Make sure that the variable
OPENCV_DIR
was created and add%OPENCV_DIR%/bin
to thePATH
environment variable. - If you intend to use the iKin kinematics modules (normally you don't - this is only needed on servers), then download IPOPT, unzip it and create the environment variable
IPOPT_DIR
, e.g. C:\Ipopt-3.7.0-win32-msvc8-yarp - Use CMake to build the iCub SLN files. Point the source code to the icub-main dir, and build to the icub-main/build dir, which will be created now.
- In CMake, check YARP_AUTO_LINK (not sure why?) and the modules you might want working (don't uncheck anything).
- Click: Configure, Configure, Generate.
- Go to
ICUB_DIR
, open iCub.sln - Go to Build->Batch Build
- Check ALL_BUILD (Release and/or Debug) and Build! (sometimes frameGrabberGui2 will not compile correctly)
Compiling the iCub repository in Linux
icub-main
With older versions (YARP < 2.3.23 and iCub < 1.1.13), you needed to define the environment variable ICUB_ROBOTNAME=iCubLisboa01
and type
make install_applications
iCub Simulator
Installing iCub_SIM in Windows
- Download SDL (Simple DirectMedia Layer) from http://www.libsdl.org/ (Development Libraries), unzip it somewhere and note down the directory
- Download ODE from http://wiki.icub.org/iCub/downloads/packages/windows/msvc8/, unzip it somewhere as well
- Create the environment variables
SDLDIR
,ODE_DIR
:ODE_DIR
is ODE dir (e.g., C:/ode-0.11.1).SDLDIR
is SDL dir (C:/SDL-1.2.14).
- Add
%SDLDIR%/lib
to thePATH
variable. - Re-run CMake with the ODE, OPENCV and SDL variables checked.
- Compile project iCub_SIM
Installing iCub_SIM in Mac OS X
See these pages:
- iCub simulator on Mac OS X Lion: the definitive (?) tutorial by Fabio Ruini
- iCub simulator, complete MacOSX installation quide by Martin Peniak
Committing changes to the repositories
If you are a developer and you need to add/modify files within the repository, talk to one of the main developers and use Github/SourceForge.
With SVN, make sure that your client is configured correctly with regard to auto-props, which is a mechanism that takes care of line endings and MIME filetypes according to wildcards (for example, setting some flags for *.txt files and other flags for *.sh). Here is a better explanation, see also the 'Subversion client flags' subpage (part of the official manual, linked below) for auto-props adopted by iCub developers
To commit an application "APPNAME" (consisting of several modules and connections) in the repository:
- commit the source code
- commit a
.xml.template
file in the app directory, containing generic node names like "pwrNode1", "console" - commit a VisLab-specific
.xml
file in the iCubLisboa01 directory, or in contrib, containing our node names like "icubbrain1", "chico3" etc.