* Container based build environments * Initial commit for support of Arch and Manjaro Linux distros * Removed openSUSE as shiboken is not supported in 15.3 * Added system updates to container image build * Removed duplicates and ordered packages for easy reference * Updated documenation for openSUSE and package installation. Added documentation on how to install packages outside of conatiners Removed references to openSUSE due to missing dependancies. * Matched debian and ubuntu install script for eaiser comparison * Fixed error of image realease from latest to rolling Ubuntu's "latest" tag is to their LTS distribution release rather than their current cutting edge distro release. * Update debian.sh Remove unneeded deps and remove libboost-all-dev * Update ubuntu.sh Remove unneeded deps and remove libboost-all-dev Co-authored-by: Christopher West <cwest@thedigitaledge.co.uk> Co-authored-by: Kurt Kremitzki <kkremitzki@users.noreply.github.com>
137 lines
2.9 KiB
ReStructuredText
137 lines
2.9 KiB
ReStructuredText
==========================
|
|
FreeCAD build dependencies
|
|
==========================
|
|
|
|
Distributions
|
|
=============
|
|
|
|
The following commands are used to install the packages needed to build FreeCAD from source on the following distributions.
|
|
|
|
|
|
Arch Linux
|
|
----------
|
|
|
|
The following command is used to install the required packages used to compile FreeCAD on Arch Linux.
|
|
|
|
.. code-block:: console
|
|
|
|
sudo sh tools/build/arch.sh
|
|
|
|
|
|
Debian
|
|
------
|
|
|
|
The following command is used to install the required packages used to compile FreeCAD on Debian.
|
|
|
|
.. code-block:: console
|
|
|
|
sudo sh tools/build/debian.sh
|
|
|
|
|
|
Fedora
|
|
------
|
|
|
|
The following command is used to install the required packages used to compile FreeCAD on Fedora.
|
|
|
|
.. code-block:: console
|
|
|
|
sudo sh tools/build/fedora.sh
|
|
|
|
|
|
Manjaro
|
|
-------
|
|
|
|
The following command is used to install the required packages used to compile FreeCAD on Manjaro Linux.
|
|
|
|
.. code-block:: console
|
|
|
|
sudo sh tools/build/manjaro.sh
|
|
|
|
|
|
Ubuntu
|
|
------
|
|
|
|
|
|
The following command is used to install the required packages used to compile FreeCAD on Ubuntu Linux.
|
|
|
|
.. code-block:: console
|
|
|
|
sudo sh tools/build/ubuntu.sh
|
|
|
|
|
|
Containers
|
|
==========
|
|
|
|
The following will create containers that have all the required dependencies
|
|
pre-installed that are needed to build FreeCAD from source.
|
|
|
|
|
|
Arch Linux
|
|
-----------
|
|
|
|
The following commands are used to create and run a Arch Linux build environment.
|
|
|
|
.. code-block:: console
|
|
|
|
docker build --file tools/build/Dockerfile.Arch --tag freecad-arch
|
|
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-arch
|
|
|
|
|
|
Debian
|
|
------
|
|
|
|
The following commands are used to create and run a Debian build environment.
|
|
|
|
.. code-block:: console
|
|
|
|
docker build --file tools/build/Dockerfile.Debian --tag freecad-debian
|
|
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-debian
|
|
|
|
|
|
Fedora
|
|
------
|
|
|
|
The following commands are used to create and run a Fedora build environment.
|
|
|
|
.. code-block:: console
|
|
|
|
docker build --file tools/build/Dockerfile.Fedora --tag freecad-fedora
|
|
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-fedora
|
|
|
|
|
|
Manjaro
|
|
-------
|
|
|
|
The following commands are used to create and run a Manjaro build environment.
|
|
|
|
.. code-block:: console
|
|
|
|
docker build --file tools/build/Dockerfile.Manjaro --tag freecad-manjaro
|
|
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-manjaro
|
|
|
|
|
|
Ubuntu
|
|
------
|
|
|
|
The following commands are used to create and run a Ubuntu build environment.
|
|
|
|
|
|
.. code-block:: console
|
|
|
|
docker build --file tools/build/Dockerfile.Ubuntu --tag freecad-ubuntu
|
|
docker run --rm --interactive --tty --volume $(pwd):/builds:z freecad-ubuntu
|
|
|
|
|
|
Build Code
|
|
==========
|
|
|
|
To build the FreeCAD code inside one of the running containers the following
|
|
commands should be used
|
|
|
|
.. code-block:: console
|
|
|
|
mkdir freecad-build
|
|
cd freecad-build
|
|
cmake ../freecad-source
|
|
make -j$(nproc --ignore=2)
|