/** \page compilation Build & installation This page describes how to compile, build and install Concordia library. \section compilation1 Requirements Before you compile, make sure you have these installed: - g++ compiler - cmake - Boost library - Log4cpp - (optional) Doxygen - (optional) TeX \subsection compilation1_1 Ubuntu package list On Ubuntu 14.04, the above software comes in standard packages. Here is the complete list of these packages: - g++ - cmake - libboost-dev - libboost-serialization-dev - libboost-test-dev - libboost-filesystem-dev - libboost-system-dev - libboost-program-options-dev - libboost-iostreams-dev - libboost-regex-dev - libboost-locale-dev - liblog4cpp5-dev - libconfig++-dev - libconfig-dev - libpcre3-dev - doxygen - texlive-font-utils \subsection compilation1_2 Ubuntu requirements install command If you want to install all the above packages at once, simply use the below command (this will also install the optional packages): \verbatim sudo apt-get install g++ cmake libboost-dev libboost-serialization-dev libboost-test-dev libboost-filesystem-dev libboost-system-dev libboost-program-options-dev libboost-iostreams-dev libboost-regex-dev libboost-locale-dev liblog4cpp5-dev libconfig++-dev libconfig-dev libpcre3-dev doxygen texlive-font-utils \endverbatim \section compilation2 Build & installation procedure To build and install Concordia, navigate to its home directory and issue the following commands: \verbatim mkdir build cd build ../cmake.sh make make test sudo make install \endverbatim After that it is strongly recommended to run ldconfig to update linker info with newly installed shared libraries: \verbatim sudo ldconfig -v \endverbatim \section compilation3 Documentation If Doxygen is available, a successful compilation generates documentation data in three formats in the build/doc directory. The man files in doc/man will be installed during installation. Open doc/html/index.html for a HTML version of the same documentation. The latex directory contains uncompiled latex files. To generate a single pdf file run \verbatim cd doc/latex make \endverbatim This should generate a single file called refman.pdf in the same directory. \section compilation4 Sample program In order to verify whether Concordia has been installed successfully, run the following minimal example. Prepare the file test.cpp with the following contents (remember to substitute with the path of the unpacked Concordia package). \verbatim #include #include using namespace std; int main() { Concordia concordia("/tests/resources/concordia-config/concordia.cfg"); cout << concordia.getVersion() << endl; } \endverbatim Compilation method: \verbatim g++ test.cpp -lconcordia -lconfig++ -lboost_system -lboost_serialization -lboost_unit_test_framework -lboost_filesystem -lboost_program_options -lboost_iostreams -lboost_regex -lboost_locale -lutf8case \endverbatim */