Compile on Docker/pl: Difference between revisions

From FreeCAD Documentation
(Created page with "* Oryginał: https://gitlab.com/daviddaish/freecad_docker_env * Oficjalny: https://GitHub.com/FreeCAD/Docker")
(Created page with "==Wymagania wstępne==")
Line 29: Line 29:
* Oficjalny: https://GitHub.com/FreeCAD/Docker
* Oficjalny: https://GitHub.com/FreeCAD/Docker


==Prerequisites==
<span id="Prerequisites"></span>
==Wymagania wstępne==


* 10GB of free storage
* 10GB of free storage

Revision as of 17:08, 18 November 2023

Ta dokumentacja nie jest ukończona. Prosimy o pomoc w tworzeniu dokumentacji.

Strona Model polecenia GUI wyjaśnia jak powinny być dokumentowane polecenia. Przejrzyj stronę Category:UnfinishedDocu, aby zobaczyć więcej niekompletnych stron, takich jak ta. Zobacz stronę Category:Command Reference aby poznać wszystkie komendy.

Zobacz stronę wytycznych Wikidla FreeCAD aby dowiedzieć się, jak edytować strony Wiki, i przejdź do strony Pomóż w rozwoju FreeCAD, aby dowiedzieć się o innych sposobach, w jakie możesz wnieść swój wkład.

Informacje ogólne

Wśród opcji kompilacji i instalacji FreeCAD istnieje możliwość użycia Dockera. Ta metoda jest przydatna przede wszystkim dla programistów FreeCAD korzystających z komputerów z systemem Linux lub Mac OS.

Korzyści

Wszystkie zależności FreeCAD są już zainstalowane, kompatybilne ze sobą i odpowiednio skonfigurowane, co pozwala na bardzo szybkie rozpoczęcie programowania.

  • Zależności są zawarte w kontenerze docker, co zapobiega zanieczyszczeniu stacji roboczej niechcianymi pakietami i kolizji wersji.
  • Kod źródłowy i katalogi kompilacji znajdują się poza kontenerem docker. Pozwala to na korzystanie z preferowanych edytorów, systemów wersjonowania, narzędzi deweloperskich itp. bez konieczności konfigurowania ich w kontenerze docker. Możesz po prostu używać ich normalnie, bezpośrednio ze stacji roboczej. (Oznacza to również, że nie musisz odbudowywać kontenera docker za każdym razem, gdy chcesz skompilować FreeCAD).
  • Dla tych, którzy używają niejasnych dystrybucji *nix i instrukcje nie są dostępne do pobierania zależności, wszystko, co musisz zainstalować na swojej stacji roboczej, to docker, który jest dość powszechnie dostępny w wielu dystrybucjach.
  • Zapewnia on statyczne, niezmienne środowisko programistyczne. Osobiście uważam to za przydatne podczas programowania, aby zmniejszyć liczbę potencjalnych zmiennych, które mogą powodować problemy. Wiesz, że nie zmieniłeś czegoś ezoterycznego w środowisku między kompilacjami. W przypadku deweloperów współpracujących ze sobą i korzystających z tego samego kontenera docker, można mieć pewność, że obaj pracują w tym samym środowisku, co zmniejsza liczbę błędów komunikacyjnych spowodowanych różnicami w środowisku.

Repozytorium Docker

Wymagania wstępne

  • 10GB of free storage
  • Docker

Installation

Download the source

The best way to get FreeCAD's source code is to clone the Git repository. For this you need the git program which can be easily installed in most Linux and Mac OS distributions, and it can also be obtained from the official website.

This will place a copy of the latest version of the FreeCAD source code in a new directory called freecad_source.

git clone https://github.com/FreeCAD/FreeCAD.git ~/my_code/freecad_source

For more information on using Git, and contributing code to the project, see Source code management.

Source archive

Alternatively you can download the source as an archive, a .zip or .tar.gz file, and unpack it in the desired directory.

Create build directory

Create a directory to hold your compiled FreeCAD source.

mkdir ~/my_code/freecad_build

Pull Docker image

Pull the Docker image. (Official image coming soon.)

docker pull registry.gitlab.com/daviddaish/freecad_docker_env:latest

Allow access to your window manager

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.

xhost +

If you're connected to any untrusted systems, such as via ssh, this will make you vulnerable to malicious code. Either close any ssh connections, or look into more secure xhost permissions, which is outside the scope of this tutorial.

Mac OS users

For those using Mac OS, the X window system may not be installed. The XQuartz project is a long running open source project that will allow you to add it to your computer. You can find it here.

Launch the docker image

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.

fc_source=~/my_code/freecad_source
fc_build=~/my_code/freecad_build
other_files=~/

Launch the Docker image.

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

Build FreeCAD

You can build FreeCAD using the installed build script, or using your preferred method.

/root/build_script.sh

Run FreeCAD

Once FreeCAD has been built, it can be run as normal.

/mnt/build/bin/FreeCAD

You can find the attached directories in the /mnt directory.

Discussion

Related