Currently SHOGUN has been confirmed to be fully functional on PowerPC, i386 and AMD64 Linux (tested on debian/ubuntu and gentoo). We also managed to compile SHOGUN on MacOSX and via cygwin on WIN32 platforms. However some manual tweakings of configuration files might be necessary.
SHOGUN is currently pre-packaged for debian (see http://www.debian.org) and available on MacOSX via macports (see http://www.macports.org )
On debian, depending on the interface you want, install the package(s)
libshogun-dev - for C++ developers building extensions using libshogun shogun-octave - for the static octave interface shogun-octave-modular - for the modular octave interface shogun-python - for the static python interface shogun-python-modular - for the modular python interface shogun-r - for the r interface shogun-cmdline - for the command-line interface. shogun-elwms - for the eierlegende wollmilchsau interface (one interface to r/python/octave allowing to run commands in non-native languages) shogun-doc - for the documentation
The mac port is provided by James Kyle (Thanks!!) and makes installations on OSX as easy as under linux. To install shogun you will need macports (see http://www.macports.org). Then issue
sudo port selfupdate sudo port install swig -php5 -ruby -perl +python (shogun users who want the r and octave interfaces should add +octave and/or +r to this list) sudo port install shogun (for r, octave, and elwms interfaces: +r +octave +elwms)
Add
DYLD_FALLBACK_LIBRARY_PATH=${macports_prefix}/lib
to your shell profile. *Tip* the default ${macports_prefix} is /opt/local/. In that case, the library path would be /opt/local/lib.
Download SHOGUN from http://www.shogun-toolbox.org , aswell as its requirements.
SHOGUN requires the standard linux utils like bash, grep, test, sed, cut, ldd, uname gcc g++ and cat python (debian package: python2.4 or python2.5) for the ./configure to work.
Optionally you will need atlas and lapack (debian packages lapack3-dev, atlas3-headers atlas3-base-dev or atlas3-altivec-dev atlas3-sse2-dev) installed. Note that atlas/lapack is only supported under linux (high performance computing should be done under linux only anyway). In case atlas/lapack is unavailable, don't worry most of shogun will work without, though slightly slower versions are used. To enable Multiple Kernel Learning with CPLEX(tm) just make sure cplex can be found in the PATH. If it is not found shogun will resort to GLPK (if version at least 4.29 is found) for 1-norm MKL, p-norm MKL with p>1 will work nonetheless.
On most platforms (Linux,MacOSX,cygwin) it is sufficient to issue
./configure make sudo make install
In case you just want to compile for a single interfaces you can use
./configure --interfaces=libshogun,libshogunui,<interface> make sudo make install
where interface is one of the following
(you don't need to compile libshogunui in case you compile a modular interface)
However, just running
./configure
will autodetect and configure for the available interfaces.
Call
./configure --help
to get a list of additional options.
If this does not work for you, consult the INSTALL file for platform specific build instructions.