Skip to content
Snippets Groups Projects
Commit 29a8e3f0 authored by Eduard Ciolompea's avatar Eduard Ciolompea
Browse files

Update documentation

parent 59579775
Branches bugfix/fix-windows-build
No related tags found
No related merge requests found
......@@ -22,37 +22,63 @@ Download the project::
Most needed dependencies are handled with ``Conan``.
To install Conan, follow the official guide https://docs.conan.io/2/installation.html.
.. _building_under_windows:
If you don't already have a conan profile, you can let Conan detect and create a suitable default profile for your current environment with::
conan profile detect
Installing the Build Environment
--------------------------------
or use one of the provided profiles in `utils/conan`.
.. tabs::
The easiest way to get started is to call a script::
.. tab:: Windows
cd utils/ci/scripts && ./15_prepare-thirdParty.sh
#. MSYS2
On Windows, the build environment of choice are :term:`MSYS2` programming tools.
:term:`MSYS2` is used to install some third-party software on which |op| depends.
Also, the unix-like shell simplifies c++ compilation on Windows.
For details, see `MSYS2 website <https://www.msys2.org/>`_.
.. _msys2:
#. Download MSYS2
The latest 64-bit package is located in the Installation section of `MSYS2 website <https://www.msys2.org/>`_.
.. _msys2_installation:
#. Install MSYS2
Run the downloaded executable and adjust suggested settings to your needs (defaults are fine).
In the following, it is assumed that MSYS2 is installed under ``C:\msys64``.
.. _binary_packages:
This script checks out needed third party dependencies and if they're not already present in local cache or available in the conancenter it builds them one after the other.
Installing the Binary Packages
------------------------------
The first set of dependencies we need to install in order to successfully compile SCM are the binary packages. These can be installed via appropiate package manager.
Additionally, download ``boost`` and all packages needed for your operating system to build C++ programs.
.. tabs::
.. tab:: Linux
.. tab:: Windows (MSYS2)
.. code-block::
#. Open ``MSYS2 MinGW 64-bit`` and execute the following package manager ``pacman`` commands to update the package repository and upgrade system packages:
sudo apt install libboost-all-dev
sudo apt install build-essential
sudo apt install ccache
sudo apt install cmake
.. code-block::
pacman -Syuu
.. tab:: Windows
If the upgrade requires a restart of MSYS2, resume the upgrade by re-opening the shell and call:
.. code-block::
For Windows, MSYS2 is recommended as build environment. You may need to install some additional packages in order to compile SCM properly.
pacman -Suu
#. Required packages:
.. code-block::
......@@ -67,3 +93,62 @@ Additionally, download ``boost`` and all packages needed for your operating syst
pacman -S mingw-w64-x86_64-graphviz
pacman -S mingw-w64-x86_64-gtest
pacman -S mingw-w64-x86_64-make
.. tab:: Linux
#. Install required binary packages
.. code-block::
sudo apt install libboost-all-dev
sudo apt install build-essential
sudo apt install ccache
sudo apt install cmake
.. _building_prerequisites:
Installing the Dependencies
If you don't already have a conan profile, you can let Conan detect and create a suitable default profile for your current environment with::
conan profile detect
or use one of the provided profiles in `utils/conan`.
The easiest way to get started is to call a script::
cd utils/ci/scripts && ./15_prepare-thirdParty.sh
This script checks out needed third party dependencies and if they're not already present in local cache or available in the conancenter it builds them one after the other.
#. To build and install the dependencies, run the script ``15_prepare_thirdParty.sh`` located in ``utils/ci/scripts``.
.. tabs::
.. tab:: Windows
#. The script ``15_prepare_thirdParty.sh`` also requires the variable PYTHON_WINDOWS_EXE set. This variable refers to the path of the python installation (For ex: It could be either on native Windows or on MSYS).
If the python is installed on MSYS then set the variable with the following command.
.. code-block::
export PYTHON_WINDOWS_EXE=python3
#. Execute the script ``15_prepare_thirdParty.sh`` on MSYS
.. code-block::
cd utils/ci/scripts
./15_prepare_thirdParty.sh
.. tab:: Linux
#. Execute the script
.. code-block::
cd utils/ci/scripts
./15_prepare_thirdParty.sh
#. Upon successful execution of the script, the dependencies will be installed under ``C:\deps`` on Windows and ``~/deps`` on Linux.
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment