Compilation
From LagoonWiki
Contents |
System Requirements
This must be done by someone with root or sudo privileges. CS381 students should skip this section unless installing entropy on your own machine.
Package-Based Dependencies
For a completely fresh 64 bit ubuntu Fiesty Fawn machine.
sudo apt-get update sudo apt-get install build-essential
Install Nvidia drivers via envy
- google envy nvidia
- download .deb package
- run, install nvidia drivers
- installs
- changes xorg.conf
- reboots
Apt-get dependencies
sudo apt-get install libzzip-dev automake1.9 autoconf libtool libboost-python-dev libboost-signals-dev libboost-thread-dev libpcre3-dev libxaw7-dev jam python-yaml subversion
Michael Dahl found it necessary to install these as well, on some very bare-bones Ubuntu installations:
sudo apt-get install libxxf86vm-dev libxrandr-dev libfreetype6-dev libgtk2.0-dev libglu1-mesa-dev
The Galaga tutorial also requires python-wxgtk2.x.
For a Red Hat System
Note: As of February 2008, installation still doesn't work on Red Hat systems. – Bdbryant 22:48, 6 February 2008 (PST)
- add Michael's package list here
- find out whether nVidia drivers are strictly necessary
- The BOOST-Python stuff is provided with the BOOST RPM.
- As of 31-Jan-2008, the RPM installation of OGRE will not work, because Entropy expects to find some of the development files where the installation below puts them.
- Tentative fix: Don't bother installing the OGRE RPM, and use the instructions below. If you already have the RPM installed for other reasons, leave it there, follow the instructions below, but skip the sudo make install step for OGRE (only).
NVIDIA Cg
Fetch the appropriate version from http://developer.nvidia.com/object/cg_toolkit.html#downloads
- RPM for Red Hat
- Tarball for Ubuntu
If tarball, install thus:
cd slash , i.e. top most directory tar xvzf - it extracts into usr /lib whatver, horrible installation method...you need to be in the root directory when you untar it though
Unpackaged Dependencies
This is stuff that you may have to build rather than installing from a package.
Either install them manually
or use the easy package system - RECOMMENDED
svn checkout svn+ssh://miles@flash.cse.unr.edu/staff/sushil/svnroot/entropy_dependencies cd entropy_dependencies sudo sh install_entropy_dependencies.sh
- This took about an hour and twenty minutes on one of the Game Laboratory machines. – Bdbryant 11:54, 7 February 2008 (PST)
Some of the packages will fail to install their samples, due to stupid cyclical dependencies, but that will not effect entropy.
- I found that all the sudo make install and sudo jam install commands in the script failed because the sudo password for running the script expired while stuff was compiling. (It's easy to fix by just issuing them manually at the end of the build.) – Bdbryant 00:49, 31 January 2008 (PST)
Entropy
Getting the Source
For Developers
svn checkout svn+ssh://miles@flash.cse.unr.edu/grads/miles/svnroot/entropy
For CS381
I made a more stable branch for CS381
svn checkout svn+ssh://pine.cse.unr.edu/grads/miles/svnroot/entropy_gdp08s entropy
That will checkout the branch into a sudirectory named entropy. This should help keep things well organized. We should seriously consider creating separate branches for each student / team so everyone can keep stuff checked in and managed without any conflicts or anything. I will definitely need more harddrive space for that though.
Compiling
As of 31-Jan-2008, this procedure assumes that you have checked out entropy and entropy_dependences under a common parent directory. (The entropy build expects to find some some header files under ../entropy_dependencies/ogrenew/.)
Add this to your .bashrc, so that it knows to link against /usr/lib and /usr/local/lib:
export LD_LIBRARY_PATH=/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH
Now do:
cd entropy make
