Difference between revisions of "FreeCAD from Source"
Jump to navigation
Jump to search
| (13 intermediate revisions by the same user not shown) | |||
| Line 5: | Line 5: | ||
{{!}} style="text-align: center; width: 40px;" {{!}} 6 (Faye) | {{!}} style="text-align: center; width: 40px;" {{!}} 6 (Faye) | ||
{{!}} | {{!}} | ||
<br> | |||
{{!}}- <!-- Debian --> | |||
{{!}} style="text-align: center; width: 60px;" {{!}} [[File:Logo Debian.png{{!}}60px{{!}}link=https://www.debian.org/{{!}}center{{!}}middle{{!}}frameless]] | |||
{{!}} style="text-align: center; width: 40px;" {{!}} 12 (bookworm) | |||
{{!}} | |||
<br> | <br> | ||
{{!}}} | {{!}}} | ||
Installing FreeCAD from the repositories gives you a couple silly options. Directly installing gets you a seriously outdated version and installing a FLATPAK which seems to be rather broken. | |||
Based on: [https://wiki.freecad.org/Compile_on_Linux FreeCAD Documentation / Compile on Linux] | |||
So, let's try building it from source. | |||
(Based on: [https://wiki.freecad.org/Compile_on_Linux FreeCAD Documentation / Compile on Linux]) | |||
== '''<span style="color: rgb(132, 63, 161);">The required tools:</span>''' == | == '''<span style="color: rgb(132, 63, 161);">The required tools:</span>''' == | ||
| Line 25: | Line 32: | ||
<span style="color: rgb(153, 51, 102);">'''Note: This should build a stable version.''' (You can change branch to match current stable version...)</span> | <span style="color: rgb(153, 51, 102);">'''Note: This should build a stable version.''' (You can change branch to match current stable version...)</span> | ||
* <code>git clone --recurse-submodules <nowiki>https://github.com/FreeCAD/FreeCAD.git</nowiki> --branch releases/FreeCAD-0 | * <code>git clone --recurse-submodules <nowiki>https://github.com/FreeCAD/FreeCAD.git</nowiki> --branch releases/FreeCAD-1-0 freecad-source | ||
</code> | |||
== '''<span style="color: rgb(132, 63, 161);">The prerequisites:</span>''' == | == '''<span style="color: rgb(132, 63, 161);">The prerequisites:</span>''' == | ||
* <code>sudo apt install libboost-date-time-dev libboost-dev libboost-filesystem-dev libboost-graph-dev libboost-iostreams-dev libboost-program-options-dev libboost-python-dev libboost-regex-dev libboost-serialization-dev libboost-thread-dev libcoin-dev libeigen3-dev libgts-bin libgts-dev libkdtree++-dev libmedc-dev libocct-data-exchange-dev libocct-ocaf-dev libocct-visualization-dev libopencv-dev libproj-dev libpyside2-dev libqt5opengl5-dev libqt5svg5-dev qtwebengine5-dev libqt5x11extras5-dev libqt5xmlpatterns5-dev libshiboken2-dev libspnav-dev libvtk9-dev libx11-dev libxerces-c-dev libzipios++-dev occt-draw pyside2-tools python3-dev python3-matplotlib python3-packaging python3-pivy python3-ply python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtsvg python3-pyside2.qtwidgets python3-pyside2.qtnetwork python3-pyside2.qtwebengine python3-pyside2.qtwebenginecore python3-pyside2.qtwebenginewidgets python3-pyside2.qtwebchannel python3-markdown python3-git qtbase5-dev qttools5-dev swig libyaml-cpp-dev</code> | * <code>sudo apt install cmake cmake-gui libboost-date-time-dev libboost-dev libboost-filesystem-dev libboost-graph-dev libboost-iostreams-dev libboost-program-options-dev libboost-python-dev libboost-regex-dev libboost-serialization-dev libboost-thread-dev libcoin-dev libeigen3-dev libgts-bin libgts-dev libkdtree++-dev libmedc-dev libocct-data-exchange-dev libocct-ocaf-dev libocct-visualization-dev libopencv-dev libproj-dev libpyside2-dev libqt5opengl5-dev libqt5svg5-dev qtwebengine5-dev libqt5x11extras5-dev libqt5xmlpatterns5-dev libshiboken2-dev libspnav-dev libvtk9-dev libx11-dev libxerces-c-dev libzipios++-dev occt-draw pyside2-tools python3-dev python3-matplotlib python3-packaging python3-pivy python3-ply python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtsvg python3-pyside2.qtwidgets python3-pyside2.qtnetwork python3-pyside2.qtwebengine python3-pyside2.qtwebenginecore python3-pyside2.qtwebenginewidgets python3-pyside2.qtwebchannel python3-markdown python3-git qtbase5-dev qttools5-dev swig libyaml-cpp-dev python3-pybind11</code> | ||
===Notes:=== | |||
* '''libvtk9-dev''' is a moving target. (The official instructions listed '''libvtk7-dev''' which doesn't exist in Debian 12...) | |||
* '''python3-pybind11''' wasn't even listed in the official instructions. | |||
* '''python3-pyside2uic''' WAS listed, but doesn't exist & isn't required. | |||
== '''<span style="color: rgb(132, 63, 161);">Set it up:</span>''' == | == '''<span style="color: rgb(132, 63, 161);">Set it up:</span>''' == | ||
Latest revision as of 23:25, 7 August 2025
| 6 (Faye) |
| |
| 12 (bookworm) |
|
Installing FreeCAD from the repositories gives you a couple silly options. Directly installing gets you a seriously outdated version and installing a FLATPAK which seems to be rather broken.
So, let's try building it from source.
(Based on: FreeCAD Documentation / Compile on Linux)
The required tools:
sudo apt install git cmake
Get the source:
Note: This builds a non-stable version. (Whatever state the code is currently in...)
git clone --recurse-submodules https://github.com/FreeCAD/FreeCAD.git freecad-source
or maybe:
Note: This should build a stable version. (You can change branch to match current stable version...)
git clone --recurse-submodules https://github.com/FreeCAD/FreeCAD.git --branch releases/FreeCAD-1-0 freecad-source
The prerequisites:
sudo apt install cmake cmake-gui libboost-date-time-dev libboost-dev libboost-filesystem-dev libboost-graph-dev libboost-iostreams-dev libboost-program-options-dev libboost-python-dev libboost-regex-dev libboost-serialization-dev libboost-thread-dev libcoin-dev libeigen3-dev libgts-bin libgts-dev libkdtree++-dev libmedc-dev libocct-data-exchange-dev libocct-ocaf-dev libocct-visualization-dev libopencv-dev libproj-dev libpyside2-dev libqt5opengl5-dev libqt5svg5-dev qtwebengine5-dev libqt5x11extras5-dev libqt5xmlpatterns5-dev libshiboken2-dev libspnav-dev libvtk9-dev libx11-dev libxerces-c-dev libzipios++-dev occt-draw pyside2-tools python3-dev python3-matplotlib python3-packaging python3-pivy python3-ply python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtsvg python3-pyside2.qtwidgets python3-pyside2.qtnetwork python3-pyside2.qtwebengine python3-pyside2.qtwebenginecore python3-pyside2.qtwebenginewidgets python3-pyside2.qtwebchannel python3-markdown python3-git qtbase5-dev qttools5-dev swig libyaml-cpp-dev python3-pybind11
Notes:
- libvtk9-dev is a moving target. (The official instructions listed libvtk7-dev which doesn't exist in Debian 12...)
- python3-pybind11 wasn't even listed in the official instructions.
- python3-pyside2uic WAS listed, but doesn't exist & isn't required.
Set it up:
cd freecad-source/mkdir buildcd buildcmake ../
Build it:
make -j$(nproc --ignore=2)
Install it:
sudo make install