nancy.liao
2025-05-29 8d405b265285c368df2e9cf1c14acee7532e0ee7
doc/development/Build-the-library.md
@@ -1,10 +1,12 @@
# Build - Linux
## Install prerequisites
Below the prerequisites for compiling open-license-manager. For developing it we use Eclipse. Recent CDT works smoothly with CMake. Remember to install the Ninja package as build system and Cmake Gui for a good eclipse integration.
Below the prerequisites for compiling `licensecc`. For developing it we use Eclipse.
Recent CDT works smoothly with CMake. Remember to install the Ninja package as build system and Cmake Gui for a good eclipse integration.
 
### Ubuntu
Supported Ubuntu distributions are 18.04 (Bionic Beaver) and 16.04 (Xenial) though it should be possible to build on any recent Ubuntu version.
Supported Ubuntu distributions are 20.04 (Focal Fossa), 18.04 (Bionic Beaver) and 16.04 (Xenial).
It should be possible to build on any recent Debian-derivate distribution.
Install prerequisites:
@@ -68,7 +70,7 @@
```
### Other linux
Open License Manager should compile on any recent (2019) linux distribution. Being CentOS 7 the older distribution we keep compatibilty with.
Licensecc should compile on any recent (2020) linux distribution. Being CentOS 7 the older distribution we keep compatibilty with.
Minimum prerequisites
*   gcc => 4.9, cmake => 3.6
@@ -84,13 +86,13 @@
This project has a submodule (the license generator). Remember to add the option `--recursive` to clone it.
```console
git clone --recursive https://github.com/open-license-manager/open-license-manager.git
git clone --recursive https://github.com/open-license-manager/licensecc.git
```
### Configure:
```console
cd open-license-manager/build
cd licensecc/build
cmake .. -DCMAKE_INSTALL_PREFIX=../install
```
@@ -153,3 +155,25 @@
cmake -DCMAKE_TOOLCHAIN_FILE=../modules/toolchain-ubuntu-mingw64.cmake -DOPENSSL_ROOT_DIR=$CUR_PATH/openssl-OpenSSL_1_1_1d/dist -DCMAKE_FIND_DEBUG_MODE=ON -DOPENSSL_USE_STATIC_LIBS=ON -DBOOST_ROOT=$CUR_PATH/boost_1_71_0/dist  ..
```
###Build documentation
Setup the python virtual environment:
```
python3 -m venv .venv
. .venv/bin/activate
pip install wheel
pip install -r requirements.txt
```
Build the docs:
```
. .venv/bin/activate
cd build
cmake ..
make documentation
```