Compile on Docker/de: Difference between revisions
(Created page with "Alle Abhängigkeiten von FreeCAD sind bereits installiert, miteinander kompatibel und entsprechend konfiguriert, so dass Du sehr schnell mit der Entwicklung beginnen kannst....") |
(Updating to match new version of source page) |
||
(42 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
{{UnfinishedDocu}} |
{{UnfinishedDocu{{#translation:}}}} |
||
{{Docnav/de |
{{Docnav/de |
||
|[[ |
|[[Compile_on_MacOS/de|Kompilieren auf MacOS]] |
||
|[[FreeCAD_Docker_CLI_mode/de|FreeCAD Docker CLI Modus]] |
|||
|[[Compiling (Speeding up)/De|Kompilieren (Beschleunigen)]] |
|||
}} |
}} |
||
⚫ | |||
{{TOCright}} |
{{TOCright}} |
||
<span id="Overview"></span> |
|||
⚫ | |||
Unter den Möglichkeiten, FreeCAD zu bauen und zu installieren, gibt es die Möglichkeit, Docker zu verwenden. Diese Methode ist vor allem für FreeCAD Entwickler nützlich, die Linux oder Mac OS Rechner verwenden. |
Unter den Möglichkeiten, FreeCAD zu bauen und zu installieren, gibt es die Möglichkeit, Docker zu verwenden. Diese Methode ist vor allem für FreeCAD Entwickler nützlich, die Linux oder Mac OS Rechner verwenden. |
||
<span id="Benefits"></span> |
|||
===Vorteile=== |
===Vorteile=== |
||
Line 17: | Line 20: | ||
* Die Abhängigkeiten sind im Docker Container enthalten, wodurch verhindert wird, dass unerwünschte Pakete Ihre Arbeitsstation verunreinigen und dass es zu Kollisionen von Versionen kommt. |
* Die Abhängigkeiten sind im Docker Container enthalten, wodurch verhindert wird, dass unerwünschte Pakete Ihre Arbeitsstation verunreinigen und dass es zu Kollisionen von Versionen kommt. |
||
* Der Quellcode und die Bauverzeichnisse befinden sich außerhalb des Docker Containers. Dies erlaubt es Dir, deine bevorzugten Bearbeitungsprogramme, Versionierungssysteme, Entwicklungswerkzeuge usw. zu verwenden, ohne sie im Docker Container einrichten zu müssen. Du kannst sie einfach wie gewohnt direkt von deinem Arbeitsplatzrechner aus benutzen. (Außerdem bedeutet es, dass du den Docker Container nicht jedes Mal neu aufbauen musst, wenn du FreeCAD bauen willst). |
* Der Quellcode und die Bauverzeichnisse befinden sich außerhalb des Docker Containers. Dies erlaubt es Dir, deine bevorzugten Bearbeitungsprogramme, Versionierungssysteme, Entwicklungswerkzeuge usw. zu verwenden, ohne sie im Docker Container einrichten zu müssen. Du kannst sie einfach wie gewohnt direkt von deinem Arbeitsplatzrechner aus benutzen. (Außerdem bedeutet es, dass du den Docker Container nicht jedes Mal neu aufbauen musst, wenn du FreeCAD bauen willst). |
||
* Für diejenigen, die obskure *nix Distributionen und [[Compile_on_Linux |
* Für diejenigen, die obskure *nix Distributionen und [[Compile_on_Linux/de#Erhalten der Abhängigkeiten|Gebrauchsanweisungen sind nicht verfügbar]] für das Holen von Abhängigkeiten verwenden, ist alles, was du auf deinem Arbeitsplatzrechner installieren musst, ein Docker, der in vielen Distributionen recht häufig verfügbar ist. |
||
* Er bietet eine statische, unveränderliche Entwicklungsumgebung. Ich persönlich finde das nützlich, wenn ich bei der Entwicklung die Anzahl der potentiellen Variablen, die ein Problem verursachen könnten, reduzieren möchte. Du weist, dass du zwischen den Builds nichts Esoterisches in der Umgebung verändert hast. Für Entwickler, die zusammenarbeiten und beide den gleichen Docker Container verwenden, kannst du sicher sein, dass ihr beide von der gleichen Umgebung aus arbeitet, was Kommunikationsfehler aufgrund von Unterschieden in der Umgebung reduziert. |
* Er bietet eine statische, unveränderliche Entwicklungsumgebung. Ich persönlich finde das nützlich, wenn ich bei der Entwicklung die Anzahl der potentiellen Variablen, die ein Problem verursachen könnten, reduzieren möchte. Du weist, dass du zwischen den Builds nichts Esoterisches in der Umgebung verändert hast. Für Entwickler, die zusammenarbeiten und beide den gleichen Docker Container verwenden, kannst du sicher sein, dass ihr beide von der gleichen Umgebung aus arbeitet, was Kommunikationsfehler aufgrund von Unterschieden in der Umgebung reduziert. |
||
<span id="Docker_Repository"></span> |
|||
==Docker |
==Docker Repositorien== |
||
* Original: https://gitlab.com/daviddaish/freecad_docker_env |
* Original: https://gitlab.com/daviddaish/freecad_docker_env |
||
* |
* Offiziell: https://GitHub.com/FreeCAD/Docker |
||
= |
<span id="Prerequisites"></span> |
||
==Vorbedingungen== |
|||
* 10GB |
* 10GB freier Speicherplatz |
||
* Docker |
* Docker |
||
==Installation== |
==Installation== |
||
<span id="Download_the_source"></span> |
|||
===Download the source=== |
|||
===Herunterladen der Quelle=== |
|||
Der beste Weg, den Quellcode von FreeCAD zu erhalten, ist das Klonen des [https://github.com/FreeCAD/FreeCAD Git Repositorium]. Dazu benötigst du das {{incode|git}} Programm, das in den meisten Linux und Mac OS Distributionen einfach installiert werden kann, und es kann auch von der [http://git-scm.com/ offiziellen Website] bezogen werden. |
|||
Dadurch wird eine Kopie der neuesten Version des FreeCAD Quellcodes in einem neuen Verzeichnis namens {{incode|freecad_source}} abgelegt. |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 42: | Line 48: | ||
}} |
}} |
||
Weitere Informationen über die Verwendung von Git und das Einbringen von Code in das Projekt findest Du unter [[Source code management/de|Quellcodeverwaltung]]. |
|||
=== Quellarchiv === |
|||
Alternativ kannst du den Quellcode als [https://github.com/FreeCAD/FreeCAD/releases/latest archive], eine {{incode|.zip}} oder {{incode|.tar.gz}} Datei herunterladen und in das gewünschte Verzeichnis entpacken. |
|||
<span id="Create_build_directory"></span> |
|||
===Create build directory=== |
|||
===Erstelle ein Build Verzeichnis=== |
|||
Erstelle ein Verzeichnis, das deine kompilierten FreeCAD Quellen enthält. |
|||
Create a directory to hold your compiled FreeCAD source. |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 55: | Line 62: | ||
}} |
}} |
||
<span id="Pull_Docker_image"></span> |
|||
⚫ | |||
===Docker Abbild ziehen=== |
|||
Ziehe das Docker Abbild. (Offizielle Bild kommt bald.) |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 63: | Line 71: | ||
}} |
}} |
||
<span id="Allow_access_to_your_window_manager"></span> |
|||
===Allow access to your window manager=== |
|||
===Zugriff auf deinen Windowmanager erlauben=== |
|||
Damit FreeCAD seine GUI aus dem Docker Container heraus starten kann, musst du Docker Zugriffsrechte für deinen Windowmanager geben. In den meisten Linux Distributionen ist dies das X Fenster System. Du kannst den unten stehenden Befehl verwenden, um einen pauschalen Zugriff auf X zu erlauben, bis du deinen Rechner neu startest oder dich abmeldest. |
|||
In order for FreeCAD to launch it's GUI from within the Docker container, you need to give Docker access permissions to your window manager. In most Linux distributions, this is the X window system. You can use the below command to allow blanket access to X, until you reboot or logoff your computer. |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 71: | Line 80: | ||
}} |
}} |
||
Wenn du mit nicht vertrauenswürdigen Systemen verbunden bist, z.B. über {{incode|ssh}}, macht dich das anfällig für bösartigen Code. Schließe entweder alle {{incode|ssh}} Verbindungen, oder schau dir sicherere xhost Berechtigungen an, was außerhalb des Umfanges dieses Tutorials liegt. |
|||
<span id="Mac_OS_users"></span> |
|||
====Mac OS |
====Mac OS Anwender==== |
||
Für diejenigen, die Mac OS verwenden, ist das X Fenster System möglicherweise nicht installiert. Das XQuartz Projekt ist ein seit langem laufendes quelloffenes Projekt, das es dir erlaubt, es auf deinem Computer zu installieren. [https://www.xquartz.org/ Du kannst es hier finden]. |
|||
<span id="Launch_the_docker_image"></span> |
|||
===Launch the docker image=== |
|||
⚫ | |||
Weise Umgebungsvariablen zu, so dass der Docker Container den FreeCAD Quellcode und das Build Verzeichnis einhängen wird. Zusätzlich kannst du ein zusätzliches Verzeichnis einhängen, das alle Dateien enthält, die du zu Testzwecken verwenden möchtest. In dem untenstehenden Schnipsel haben wir es als dein Heimverzeichnis als einfache Standardvorgabe belassen. |
|||
Assign environment variables so the Docker container will mount FreeCAD's source code, and build directory. In addition, you can mount an extra directory to contain any files you'd like to use for testing purposes. In the below snippet, we've left it as your home directory as a simple default. |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 87: | Line 98: | ||
}} |
}} |
||
Starte das Docker Abbild. |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 98: | Line 109: | ||
}} |
}} |
||
<span id="Build_FreeCAD"></span> |
|||
⚫ | |||
===FreeCAD bauen=== |
|||
Du kannst FreeCAD mit dem installierten Build Skript oder mit deiner bevorzugten Methode bauen. |
|||
You can build FreeCAD using the installed build script, or using your preferred method. |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 106: | Line 118: | ||
}} |
}} |
||
<span id="Run_FreeCAD"></span> |
|||
===Run FreeCAD=== |
|||
⚫ | |||
Sobald FreeCAD gebaut wurde, kann es wie gewohnt ausgeführt werden. |
|||
{{Code|lang=bash|code= |
{{Code|lang=bash|code= |
||
Line 114: | Line 127: | ||
}} |
}} |
||
Du kannst die angehängten Verzeichnisse im {{incode|/mnt}} Verzeichnis finden. |
|||
= |
<span id="Discussion"></span> |
||
==Diskussion== |
|||
* [https://forum.freecadweb.org/viewtopic.php?f=4&t=42954 Docker env build container] |
|||
* [https://forum.freecadweb.org/viewtopic.php?f=10&t=48266 VSCode setup with Docker (1)] |
|||
* [https://forum.freecadweb.org/viewtopic.php?p=427812#p427812 VSCode setup with Docker (2)] |
|||
= |
<span id="Related"></span> |
||
==Verwandt== |
|||
* [[AppImage]] |
* [[AppImage]] |
||
{{Docnav |
{{Docnav/de |
||
|[[Compile on MacOS|Compile on MacOS]] |
|||
|[[Compile_on_MacOS/de|Kompilieren auf MacOS]] |
|||
|[[Compiling (Speeding up)|Compiling (Speeding up)]] |
|||
|[[FreeCAD_Docker_CLI_mode/de|FreeCAD Docker CLI Modus]] |
|||
}} |
}} |
||
Latest revision as of 17:23, 14 March 2023
Diese Dokumentation ist noch nicht fertiggestellt. Bitte hilf mit und trage etwas zur Dokumentation bei.
Die Seite GuiBefehl Modell erklärt, wie Befehle dokumentiert werden sollten. Unter Category:UnfinishedDocu findest du weitere unvollständige Seiten wie diese (und unter Category:UnfinishedDocu/de unvollständige Übersetzungen). Siehe Category:Command Reference für sämtliche Befehle (und Category:UnfinishedDocu/de für vorhandene Übersetzungen).
Siehe WikiSeiten, um zu lernen, wie die Wiki-Seiten bearbeitet werden und FreeCAD Unterstützen, um andere Wege zu entdecken, wie du einen Beitrag leisten kannst.
Überblick
Unter den Möglichkeiten, FreeCAD zu bauen und zu installieren, gibt es die Möglichkeit, Docker zu verwenden. Diese Methode ist vor allem für FreeCAD Entwickler nützlich, die Linux oder Mac OS Rechner verwenden.
Vorteile
Alle Abhängigkeiten von FreeCAD sind bereits installiert, miteinander kompatibel und entsprechend konfiguriert, so dass Du sehr schnell mit der Entwicklung beginnen kannst.
- Die Abhängigkeiten sind im Docker Container enthalten, wodurch verhindert wird, dass unerwünschte Pakete Ihre Arbeitsstation verunreinigen und dass es zu Kollisionen von Versionen kommt.
- Der Quellcode und die Bauverzeichnisse befinden sich außerhalb des Docker Containers. Dies erlaubt es Dir, deine bevorzugten Bearbeitungsprogramme, Versionierungssysteme, Entwicklungswerkzeuge usw. zu verwenden, ohne sie im Docker Container einrichten zu müssen. Du kannst sie einfach wie gewohnt direkt von deinem Arbeitsplatzrechner aus benutzen. (Außerdem bedeutet es, dass du den Docker Container nicht jedes Mal neu aufbauen musst, wenn du FreeCAD bauen willst).
- Für diejenigen, die obskure *nix Distributionen und Gebrauchsanweisungen sind nicht verfügbar für das Holen von Abhängigkeiten verwenden, ist alles, was du auf deinem Arbeitsplatzrechner installieren musst, ein Docker, der in vielen Distributionen recht häufig verfügbar ist.
- Er bietet eine statische, unveränderliche Entwicklungsumgebung. Ich persönlich finde das nützlich, wenn ich bei der Entwicklung die Anzahl der potentiellen Variablen, die ein Problem verursachen könnten, reduzieren möchte. Du weist, dass du zwischen den Builds nichts Esoterisches in der Umgebung verändert hast. Für Entwickler, die zusammenarbeiten und beide den gleichen Docker Container verwenden, kannst du sicher sein, dass ihr beide von der gleichen Umgebung aus arbeitet, was Kommunikationsfehler aufgrund von Unterschieden in der Umgebung reduziert.
Docker Repositorien
- Original: https://gitlab.com/daviddaish/freecad_docker_env
- Offiziell: https://GitHub.com/FreeCAD/Docker
Vorbedingungen
- 10GB freier Speicherplatz
- Docker
Installation
Herunterladen der Quelle
Der beste Weg, den Quellcode von FreeCAD zu erhalten, ist das Klonen des Git Repositorium. Dazu benötigst du das git
Programm, das in den meisten Linux und Mac OS Distributionen einfach installiert werden kann, und es kann auch von der offiziellen Website bezogen werden.
Dadurch wird eine Kopie der neuesten Version des FreeCAD Quellcodes in einem neuen Verzeichnis namens freecad_source
abgelegt.
git clone https://github.com/FreeCAD/FreeCAD.git ~/my_code/freecad_source
Weitere Informationen über die Verwendung von Git und das Einbringen von Code in das Projekt findest Du unter Quellcodeverwaltung.
Quellarchiv
Alternativ kannst du den Quellcode als archive, eine .zip
oder .tar.gz
Datei herunterladen und in das gewünschte Verzeichnis entpacken.
Erstelle ein Build Verzeichnis
Erstelle ein Verzeichnis, das deine kompilierten FreeCAD Quellen enthält.
mkdir ~/my_code/freecad_build
Docker Abbild ziehen
Ziehe das Docker Abbild. (Offizielle Bild kommt bald.)
docker pull registry.gitlab.com/daviddaish/freecad_docker_env:latest
Zugriff auf deinen Windowmanager erlauben
Damit FreeCAD seine GUI aus dem Docker Container heraus starten kann, musst du Docker Zugriffsrechte für deinen Windowmanager geben. In den meisten Linux Distributionen ist dies das X Fenster System. Du kannst den unten stehenden Befehl verwenden, um einen pauschalen Zugriff auf X zu erlauben, bis du deinen Rechner neu startest oder dich abmeldest.
xhost +
Wenn du mit nicht vertrauenswürdigen Systemen verbunden bist, z.B. über ssh
, macht dich das anfällig für bösartigen Code. Schließe entweder alle ssh
Verbindungen, oder schau dir sicherere xhost Berechtigungen an, was außerhalb des Umfanges dieses Tutorials liegt.
Mac OS Anwender
Für diejenigen, die Mac OS verwenden, ist das X Fenster System möglicherweise nicht installiert. Das XQuartz Projekt ist ein seit langem laufendes quelloffenes Projekt, das es dir erlaubt, es auf deinem Computer zu installieren. Du kannst es hier finden.
Starte das Docker Abbild
Weise Umgebungsvariablen zu, so dass der Docker Container den FreeCAD Quellcode und das Build Verzeichnis einhängen wird. Zusätzlich kannst du ein zusätzliches Verzeichnis einhängen, das alle Dateien enthält, die du zu Testzwecken verwenden möchtest. In dem untenstehenden Schnipsel haben wir es als dein Heimverzeichnis als einfache Standardvorgabe belassen.
fc_source=~/my_code/freecad_source
fc_build=~/my_code/freecad_build
other_files=~/
Starte das Docker Abbild.
docker run -it --rm \
-v $fc_source:/mnt/source \
-v $fc_build:/mnt/build \
-v $other_files:/mnt/files \
-e "DISPLAY" -e "QT_X11_NO_MITSHM=1" -v /tmp/.X11-unix:/tmp/.X11-unix:ro \
registry.gitlab.com/daviddaish/freecad_docker_env:latest
FreeCAD bauen
Du kannst FreeCAD mit dem installierten Build Skript oder mit deiner bevorzugten Methode bauen.
/root/build_script.sh
FreeCAD ausführen
Sobald FreeCAD gebaut wurde, kann es wie gewohnt ausgeführt werden.
/mnt/build/bin/FreeCAD
Du kannst die angehängten Verzeichnisse im /mnt
Verzeichnis finden.
Diskussion
Verwandt
- Erste Schritte
- Installation: Herunterladen, Windows, Linux, Mac, Zusätzlicher Komponenten, Docker, AppImage, Ubuntu Snap
- Grundlagen: Über FreeCAD, Graphische Oberfläche, Mausbedienung, Auswahlmethoden, Objektname, Programmeinstellungen, Arbeitsbereiche, Dokumentstruktur, Objekteigenschaften, Hilf FreeCAD, Spende
- Hilfe: Tutorien, Video Tutorien
- Arbeitsbereiche: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework