wiki:MussaglBuild

Version 20 (modified by king, 18 years ago) ( diff )

Added example bjam commands for building boost libraries used by Mussa.

MussaGL Build Info

General Requirements

You will need to make sure the following are all installed in order to build from source.

Windows XP Requirements

See the Building MussaGL on Windows page for more information.

OS X Universal Build

As of darcs patch [300] mussa now builds as a universal binary on os x. This unforunately means you'll need OS X Universal Dependencies

Qt4

Qt4 is fairly easy to install.

configure
make 
make install

usually works. The biggest problem I've seen is that one might need to tell Qt to use internal versions of some graphics libraries if one is intending to redistribute the binary being built.

Boost

Boost is more challenging to build. First one needs to obtain BJam for ones platform. Then if one has limited disk space one might need to limit which libraries that are built. Currently we're using: program_options, test, python, spirit, filesystem and some of the string processing algorithms.

For windows users there's a copy of a build tree at http://woldlab.caltech.edu/~diane/proj/win32-boost-mingw-build.tar.bz2

Example command(s) for building boost from source (building only parts used by Mussa):

Win32 w/ Mingw

bjam "-sTOOLS=mingw" --with-python-version=2.4 --with-python --with-program_options --with-filesystem --with-serialization --with-test install

Win32 w/ Visual Studio 2005

bjam "-sTOOLS=vc-8_0" --with-python-version=2.4 --with-python --with-program_options --with-filesystem --with-serialization --with-test install

Debian (Why build from source when you have Debian packages?):

apt-get install libboost-python-dev libboost-python1.33.1 libboost-program-options-dev libboost-program-options1.33.1 libboost-serialization-dev libboost-test-dev libboost-test1.33.1

CMake

Note: Requires cmake version >= 2.4

To check your current version, type:

cmake --version

If you don't have CMake binaries are available for download at http://cmake.org/HTML/Download.html

CMake takes the place of the GNU autotools effectively replacing the "configure" step (and the automake and autoconf steps as well). The big advantage is that since CMake implements its own macro language one doesn't need to know portable bash scripting and m4 to write new build tests, like one does when using autotools. This makes building on windows dramatically easier.

Building Mussa

Once one has the dependencies one can actually build mussa.

First checkout mussa using darcs (Hopefully soon there will be source distributions as well as binary distributions).

darcs get http://woldlab.caltech.edu/svn/mussa.darcs mussa
cd mussa
mkdir build
cd build
cmake ..
make

To run the unittests from with in the build directory type

make test

or

ctest 

CMake Troubleshooting

CMake could not find a dependency.

CMake includes a program

ccmake

that allows one to view and edit the CMake configuration variables. I'm still a bit new at properly creating a CMake configuration so it's very likely that one will need to use the "advanced" view which shows all of the configuration variable in order to find what is NOT_DEFINED. (Or was it "NOT_FOUND")?

To see all of the build commands run make like this:

make VERBOSE=1

To see the output of the unittests

ctest -VV
Note: See TracWiki for help on using the wiki.