Kompilierung (Beschleunigung)
FreeCAD ist eine große Anwendung, die zwischen 10 Minuten und einer Stunde dauern kann, um vollständig aus dem Quellcode kompiliert zu werden. Dies hängt in erster Linie von der CPU ab, die Du hast, und der Anzahl der Kerne, die für den Kompilierungsprozess verwendet werden. Hier sind einige Tipps, um diesen Prozess zu verkürzen und die Erstellungszeiten zu verkürzen.
CCache
Installiere ccache
um die Erstellung zwischenzuspeichern.
Module deaktivieren
Wenn Du cmake
zur Konfiguration des Build verwendest, kannst Du die Kompilierung bestimmter Arbeitsbereiche deaktivieren, die Du im Moment vielleicht nicht brauchst. Dies ist nützlich, wenn du nur ein paar Arbeitsbereiche testen musst.
Zum Beispiel, um den Aufbau der FEM- und Mesh-Arbeitsplätze zu vermeiden:
cmake -DBUILD_FEM=OFF -DBUILD_MESH=OFF ../freecad-source
Verwende cmake-gui
, cmake-curses-gui
, oder cmake-qt-gui
, um alle möglichen Variablen anzuzeigen, die in der Konfiguration bearbeitet werden können; über diese Schnittstellen kannst du verschiedene Arbeitsbereiche leicht ein- oder ausschalten.
Anzahl der parallelen Aufträge
Nach der Konfiguration mit cmake
startet das Programm make
den eigentlichen C++-Compiler, um an den Quelltextdateien zu arbeiten. Du kannst die Kompilierung beschleunigen, indem du an verschiedenen Dateien gleichzeitig arbeitest. Dies wird mit der Option -j
von make
erreicht, die die Anzahl der gleichzeitig ausgeführten "Jobs" oder Kompilierungsbefehle angibt. Diese Option ist eine Ganzzahl.
Führe vier Kompilierungsbefehle parallel aus:
make -j4
Kompiliere so viele Dateien parallel wie die Anzahl der CPU-Kerne in Deinem System. Dies ist nützlich, wenn Du viele Kerne hast und diese alle zum Kompilieren der Software verwenden möchtest.
make -j$(nproc)
Kompiliere so viele Dateien parallel wie die Anzahl der CPU-Kerne in Deinem System, minus zwei. Verwende dies, damit Dein System immer noch auf eine andere Aufgabe reagiert, z.B. zwei Kerne, die es Dir ermöglichen, einen Browser zu verwenden, während der Rest der Kerne die Software im Hintergrund kompiliert.
make -j$(nproc --ignore=2)
distcc
The distcc
program can be used to perform distributed compilation of C and C++ code across several machines in a network.
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub