Linux: Difference between revisions

From NEOSYS Dev Wiki
Jump to navigationJump to search
 
(48 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Building and Installing Exodus ==
==== [[Install/Test/Uninstall - Redhat5/Centos5/Fedora15|Redhat/Fedora/Centos]] ====


[[Log of an installation of libexodus on Ubuntu 8.04.1 LTS]]
==== [[Install/Test/Uninstall - Ubuntu 10.04 LTS|Ubuntu/Debian]] ====


[[Log of an installation of libexodus on Ubuntu 9.04 Jaunty Jackalope]]
==== [[Install/Test/Uninstall - Suse 11.4|Suse]] ====
 
[[Log of an installation of libexodus on Centos 5.3]]
 
=== exodus Dependencies ===
 
==== Building Boost from Source ====
 
Boost binaries are available for most platforms but in some cases it can be easier to build from source as follows:
 
Minimum required is boost 1_32. Here we install 1.38.
 
Optionally get ICU to fully support unicode in boost regex
 
Centos
yum install libicu-devel
Ubuntu
apt-get install libicu-dev
 
Download and unpack Boost Source
 
wget http://downloads.sourceforge.net/boost/boost_1_38_0.tar.bz2
tar xvf boost_1_38_0.tar.bz2
cd boost_1_38_0
 
./configure --help
./configure --with-libraries=date_time,filesystem,iostreams,program_options,regex,system,thread
 
Speed up the build of Boost by only doing the libraries and versions required. ADD additional config to the BJAM_CONFIG line as follows:
 
nano Makefile
 
BJAM_CONFIG= xxxxxxxxxxxxx -j4 variant=release link=shared
 
Build and install Boost
 
make
sudo make install
 
Centos - Add "/usr/local/lib" to the list of lib directories to ensure that the boost libs can be found.
 
sudo nano /etc/ld.so.conf
 
Ensure the new boost libraries are registered for use.
 
sudo /sbin/ldconfig
 
Ensure boost includes can be found. This step might be eliminated in a better Exodos installer.
 
sudo ln -s /usr/local/include/boost-1_38/boost /usr/local/include/boost
 
== 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

Latest revision as of 19:51, 10 July 2011