This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| icub:icub_pc104 [2012/11/12 18:41] – [2) Get iCub makefiles] ramirezk | icub:icub_pc104 [2012/11/13 14:41] (current) – [3) Compile iCub] ramirezk | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== ICUB installation on PC104 ====== | ||
| + | Please follow the below steps carefully. | ||
| + | |||
| + | ===== 1) Getting the iCub repositories: | ||
| + | |||
| + | Open a shell on the laptop (icubsrv) | ||
| + | cd / | ||
| + | | ||
| + | And make sure the is not a folder named iCub, if there is, please move away the folder: | ||
| + | mv iCub iCub.cvs | ||
| + | | ||
| + | Get the yarp source code from the repositories | ||
| + | cd / | ||
| + | svn co https:// | ||
| + | | ||
| + | **IMPORTANT: | ||
| + | |||
| + | __**Note: | ||
| + | exists and matches the name of our robot (e.g. iCubMunich01). If not add the following line | ||
| + | in / | ||
| + | | ||
| + | export ICUB_ROBOTNAME=iCubMunich01 | ||
| + | | ||
| + | | ||
| + | ===== 2) Get iCub makefiles ===== | ||
| + | Create the $ICUB_DIR directory that should point to / | ||
| + | mkdir $ICUB_DIR | ||
| + | cd $ICUB_DIR | ||
| + | | ||
| + | If you are upgrading the iCub repository, clean the cahe before generating the makefiles: | ||
| + | rm CMakeCache.txt | ||
| + | | ||
| + | Generate the makefiles | ||
| + | ccmake ../ | ||
| + | | ||
| + | Hit ' | ||
| + | CMAKE_BUILD_TYPE, | ||
| + | | ||
| + | Hit ' | ||
| + | You need to enabled the following: | ||
| + | ENABLE_icubmod_canmotioncontrol | ||
| + | ENABLE_icubmod_dragonfly2 | ||
| + | ENABLE_icubmod_logpolarclient | ||
| + | ENABLE_icubmod_logpolargrabber | ||
| + | ENABLE_icubmod_xsensmtx | ||
| + | ENABLE_icubmod_icubarmcalibrator | ||
| + | ENABLE_icubmod_icubheadcalibrator | ||
| + | ENABLE_icubmod_icublegscalibrator | ||
| + | ENABLE_icubmod_icubarmcalibratorj8 | ||
| + | ENABLE_icubmod_icubhandcalibrator | ||
| + | | ||
| + | Hit ' | ||
| + | ENABLE_icubmod_cartesiancontrollerclient | ||
| + | ENABLE_icubmod_cartesiancontrollerserver | ||
| + | | ||
| + | For our previous iCub, Version iCub 1.0 (before 12/ | ||
| + | ENABLE_icubmod_pcan: | ||
| + | |||
| + | For the new iCub, version ??? if iCub> | ||
| + | ENABLE_icubmod_cfw2can | ||
| + | ENABLE_icubmod_skinprototype | ||
| + | and if iCub > iCub 1.x.2 enable (very unlikely, since the neck is not getting upgrade, please verify) | ||
| + | ENABLE_icubmod_icubheadcalibratorV2 | ||
| + | |||
| + | Hit ' | ||
| + | |||
| + | ===== 3) Compile iCub ===== | ||
| + | |||
| + | cd $ICUB_DIR | ||
| + | make | ||
| + | make install_applications | ||
| + | | ||
| + | __**DO NOT**__ run "sudo make install", | ||
| + | |||
| + | It may be a good idea to update the firmware, please check this page: [[http:// | ||
| + | ===== Verify the iCub installation ===== | ||
| + | |||
| + | To verify the procedure type: | ||
| + | |||
| + | icubmoddev --list | ||
| + | among the others the list should contains also the new devices: | ||
| + | |||
| + | | ||
| + | | ||
| + | ... | ||
| + | ===== Possible Errors during compilation or generation of makefiles: ===== | ||
| + | |||
| + | **CMake Possible errors:** | ||
| + | |||
| + | pcan/ecan fails to detect API(s): check that you have unpacked plxCanApi/ | ||
| + | in / | ||
| + | PLXCANAPI_DIR/ | ||
| + | Live image >= 1.4 these should be already set, otherwise you have to do it manually. | ||
| + | Add the following to your bashrc file in /home/icub | ||
| + | cd | ||
| + | gedit .bashrc | ||
| + | and add the following variables: | ||
| + | ESDCANAPI_DIR=/ | ||
| + | PLXCANAPI_DIR=/ | ||
| + | CWF2CANAPI_DIR=/ | ||