How to Install Player/Stage on PCLinuxOS
It's been a while since my last post. This time I'd like to share my experience about installing Player/Stage on PCLinuxOS. So, how to install Player/Stage on PCLinuxOS?
First of all, some of you might wondering what Player/Stage is. Player/Stage is a software released under GNU GPL license to support development in robotic research. It was from a project formerly known as Player Project founded by Brian Gerkey, Richard Vaughan and Andrew Howard.
For more information about Player/Stage, visit its project website at SourceForge. If you are installing Player/Stage on OpenSuSE go to this post. Let's get to the main topic, "How to install Player/Stage on PCLinuxOS?"
The first thing you need to do is to install the dependencies for Player/Stage. To do this, make sure you already have the latest link on your repositories and you are connected to internet. Click here to read on how to update your repository on PCLinuxOS.
After updating your repository, type these words on Synaptic's search box. These packages are compulsory for installing Player/Stage. fortran, libconfig, libtool, pkg-config, gtk, sed, cmake, geos, statgrab, swig, gnomecanvas, imagemagick, glut, libltdl and gsl.
For a more general packages for solving dependency issue before installing Player/Stage, read my post about General Requirement for Player/Stage.
After installing those dependency packages, you'll have to install Player first before installing Stage. Although Player was available in PCLinuxOS repository, from my experience it's best to build the application from source.
Installing Player
If you decide to install Player from the repository, you'll get difficulty to run the code you made. I still don't know why, but I guess it has something to do with the library linkages.
If you build Player from the source, you could define the library linkages and the directory to which Player will be installed. By the way, PCLinuxOS didn't provide Stage in its repository.
To install Player, it's best to switch to superuser account. Since by default, player will be installed in /usr/local/. Although it's not really necessary. The first step is to download the source and extract it to your local directory (I'll assume you know how to extract an archive in Linux). Note that this guide uses Player version 2.1.2 although the latest version available on its website is 3.0.0. And instead of installing it in the default location, it'll be installed in user directory (/home/$USER/playerstage).
cd ~/player-<version>In my case, I put extra options. I enabled lasertoranger and sonartoranger and disabled vec2map. Hence, my code becomes:
make uninstall
make clean
./configure --prefix=/home/$USER/playerstage
/configure --prefix=/home/$USER/playerstage --enable-lasertoranger --enable-sonartoranger --disable-vec2mapThe next step is to add the Player's executables and libraries path to system path. Type these lines in terminal (or konsole):
make
make install
export PATH=$PATH:/home/$USER/playerstage/bin/Or you can manually add them to the your local profile file by editing these files: .bashrc or .bash_profile.
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/home/$USER/playerstage/lib/pkgconfig
export PLAYERPATH=$PLAYERPATH:/home/$USER/playerstage/share/stage/worlds:/home/$USER/playerstage/lib/
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/$USER/playerstage/include:/home/$USER/playerstage/lib:/home/$USER/playerstage/share/player/examples/plugins/logplugin
Next step is to add these lines into /etc/ld.so.conf.
/home/$USER/playerstage/lib/The last step is to test this installation configuration by typing this line in terminal.
/usr/local/lib
pkg-config --libs playercoreIt should return something like this, (might be different depending on your machine)
-L/home/$USER/playerstage/lib -lplayercore -lltdl -lpthread -lplayererrorAnd this line again:
pkg-config --cflags playercoreAgain, it should return something like this, (might also be different)
-I/home/$USER/playerstage/include/player-2.1If your machine return something like those, then you could try to run the application:
player ~/playerstage/share/stage/worlds/simple.cfg &If it run well, then the installation is complete.
Installing Stage
The installation for Stage is almost the same as installing Player.
cd ~/stage-<version>I summarized all steps above and upload it to my Google Docs, you can read the file too. If you notice that there is the word "OpenCV" in that file, just ignore it if you don't need to install it.
make uninstall
make clean
./configure --prefix=/home/$USER/playerstage
sudo make
sudo make install
pkg-config --libs stage
pkg-config --cflags stage
OpenCV is a computer vision library for researches having image manipulation/processing. If your robot involves such sensor behavior, then you'll need to install this library.
I hope this guide is useful. Inform me if you have any thing to say.