## Build project
+### With docker
+
+Architectures 'x86_64' and 'armv7l' are supported. Execute:
+
+ > tools/build-with-docker [variant: [Release]|Debug]
+
+Note: database resources building is unsupported at the moment using docker.
+
+### Natively
+
This is a CMake based building suite.
Install cmake:
> cmake -DCMAKE_BUILD_TYPE=Debug .
> cmake -DCMAKE_BUILD_TYPE=Release .
+You could avoid database resources compilation to ease the add of requirements:
+
+ > cmake -DSKIP_DATABASE_BUILD=1 .
+
## Clean project
> make clean
-## Change the compiler to Clang++
+## Change the compilers
- > cmake -DCMAKE_CXX_COMPILER=/usr/bin/clang++
+ > cmake -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DCMAKE_C_COMPILER=/usr/bin/gcc
+ or
+ > cmake -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -DCMAKE_C_COMPILER=/usr/bin/clang
## Some basic ubuntu requirements
### OpenSSL:
> sudo apt-get install libssl-dev
-
+
### Gnome XML:
> sudo apt-get install libxml2-dev
> sudo apt-get install libmysqlclient-dev
### Oracle:
- https://help.ubuntu.com/community/Oracle%20Instant%20Client
- Set 'ORACLE_HOME' environment variable in your profile, i.e.:
- export ORACLE_HOME=/usr/lib/oracle/12.1/client64/
+ Go to https://help.ubuntu.com/community/Oracle%20Instant%20Client and download development packages:
+
+ For example:
- Be sure to create in that directory, a link to oracle includes,
- for example:
+ > wget https://download.oracle.com/otn_software/linux/instantclient/19600/oracle-instantclient19.6-devel-19.6.0.0.0-1.x86_64.rpm
+ > sudo alien -i oracle-instantclient19.6-devel-19.6.0.0.0-1.x86_64.rpm
- > /usr/lib/oracle/12.1/client64$ ls -lrt
- total 8
- drwxr-xr-x 2 root root 4096 Feb 28 15:59 bin
- drwxr-xr-x 2 root root 4096 Feb 28 15:59 lib
- lrwxrwxrwx 1 root root 33 Feb 28 16:07 include -> /usr/include/oracle/12.1/client64
+ (probably basic & sqlplus is also needed)
- The alternative is to edit SConstruct file directly to set
- oracle includes directory.
+ Edit CMakeLists.txt and update oracle includes, for example:
+
+ > include_directories(/usr/include/oracle/<version>/client64/include)
### Oracle-OpenLDAP conflict:
as usual, Oracle is doing things very bad. Move the ldap.h from oracle includes, i.e.:
> cd /usr/src/gtest
> sudo cmake CMakeLists.txt
> sudo make
-
+
Copy or symlink libgtest.a and libgtest_main.a to your /usr/lib folder:
> sudo cp *.a /usr/lib
To install headers, libraries, and examples, execute:
- > make install
+ > sudo make install
Optionally you could specify another prefix for installation:
- > cmake -DCMAKE_INSTALL_PREFIX=$HOME/anna_deploy .
+ > cmake -DMY_OWN_INSTALL_PREFIX=$HOME/anna-deploy
+ > make install
## Uninstall
> cat install_manifest.txt | sudo xargs rm
+## AOTS (Agents-Oriented Testing Setup)
+
+See INSTALL_AOTS.md