96 lines
2.9 KiB
Plaintext
96 lines
2.9 KiB
Plaintext
Concordia Installation & Build Manual
|
|
=================================
|
|
|
|
This page describes how to compile, build
|
|
and install Concordia library.
|
|
|
|
========= Requirements ===============
|
|
Before you compile, make sure you have these installed:
|
|
- g++ compiler
|
|
- cmake
|
|
- Boost library
|
|
- Log4cpp
|
|
- (optional) Doxygen
|
|
- (optional) TeX
|
|
|
|
========= 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
|
|
|
|
========= 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):
|
|
|
|
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
|
|
|
|
========= Build & installation procedure ===========
|
|
|
|
To build and install Concordia, navigate to its home directory and issue the following commands:
|
|
|
|
mkdir build
|
|
cd build
|
|
../cmake.sh
|
|
make
|
|
make test
|
|
sudo make install
|
|
|
|
After that it is strongly recommended to run ldconfig to update linker info with newly installed shared libraries:
|
|
|
|
sudo ldconfig -v
|
|
|
|
========= 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
|
|
|
|
cd doc/latex
|
|
make
|
|
|
|
This should generate a single file called refman.pdf in the same directory.
|
|
|
|
========= 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).
|
|
|
|
========= test.cpp ===================
|
|
|
|
#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;
|
|
|
|
}
|
|
|
|
======================================
|
|
|
|
Compilation method:
|
|
|
|
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
|
|
|