concordia-library/concordia/compilation.dox
2015-04-30 09:29:10 +02:00

113 lines
3.0 KiB
Plaintext

/** \page compilation Concordia Installation & Build Manual
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 <CONCORDIA_HOME> with the path of the unpacked Concordia package).
\verbatim
#include <concordia/concordia.hpp>
#include <iostream>
using namespace std;
int main() {
Concordia concordia("<CONCORDIA_HOME>/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
*/