Linux: Difference between revisions
Line 8: | Line 8: | ||
=== exodus Dependencies === | === exodus Dependencies === | ||
==== Building Boost from Source ==== | |||
Boost binaries are available for most platforms. In some cases it can be easier to build from source as follows: | |||
Minimum required is boost 1_32. Here we install 1.44. [[Installing boost 1.38]] | |||
Optionally get ICU to fully support unicode in boost regex | |||
Centos | |||
yum install libicu-devel | |||
Ubuntu | |||
apt-get install libicu-dev | |||
http://www.boost.org/doc/libs/1_45_0/more/getting_started/unix-variants.html#easy-build-and-install | http://www.boost.org/doc/libs/1_45_0/more/getting_started/unix-variants.html#easy-build-and-install |
Revision as of 00:33, 20 November 2010
Building and Installing Exodus
Log of an installation of libexodus on Ubuntu 8.04.1 LTS
Log of an installation of libexodus on Ubuntu 9.04 Jaunty Jackalope
Log of an installation of libexodus on Centos 5.3
exodus Dependencies
Building Boost from Source
Boost binaries are available for most platforms. In some cases it can be easier to build from source as follows:
Minimum required is boost 1_32. Here we install 1.44. Installing boost 1.38
Optionally get ICU to fully support unicode in boost regex
Centos
yum install libicu-devel
Ubuntu
apt-get install libicu-dev
http://www.boost.org/doc/libs/1_45_0/more/getting_started/unix-variants.html#easy-build-and-install
Download and unpack Boost Source
cd ~ wget http://sourceforge.net/projects/boost/files/boost/1.45.0/boost_1_45_0.tar.gz tar xvfz boost_1_45_0.tar.gz cd boost_1_45_0
Build and install Boost
./bjam --help ./bootstrap.sh --with-libraries=date_time,filesystem,iostreams,program_options,regex,system,thread ./bjam sudo ./bjam install
If you get a problem about bzip.h missing ...
cd ~ wget http://bzip.org/1.0.6/bzip2-1.0.6.tar.gz tar xvfz bzip2-1.0.6.tar.gz cd bzip2-1.0.6
maybe add -fPIC to Makefile
nano Makefile CFLAGS=-Wall -fPIC -Winline -O2 -g $(BIGFILES)
make sudo make install
Building service
service is an incomplete multithreaded framework to support dynamic loading of library routines and serving a request/response queue.
www provides an optional web interface to the request/response queue. Windows only at the moment due to a single asp files but could be ported to php.
Building service
cd ~/exodus/trunk/service/service
g++ -fPIC -c *.cpp -I/usr/local/include/boost-1_38 -I/usr/local/include/exodus g++ -shared -o libservice.so -lc *.o g++ -o service main.cpp -I/usr/local/include/boost-1_38 -L. -I/usr/local/include/exodus \ -lexodus -lpq -lboost_filesystem-gcc41-mt -lboost_regex-gcc41-mt -lboost_thread-gcc41-mt \ -L./ -lservice
Running service
export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ./service