Compiling
Jump to navigation
Jump to search
Each operating system has its own page for compiling FreeCAD in the Online Help Documentation.
![]() |
![]() |
![]() |
Compile on Docker container |
Compile on Windows | Compile on Linux | Compile on MacOS | Compile on Docker container |
To compile on BSD, and other Unix systems, you can follow the general instruction in Compile on Linux but using the appropriate dependencies in those systems.
It is also possible to compile FreeCAD on Windows by following the instructions in Compile on Windows.
To compile FreeCAD only CLI mode (without GUI), here is the docker image FreeCAD Docker CLI mode.
To compile the programming documentation, see Source documentation.
To learn to use revision control system and contribute code see Source code management.
User documentation

- Installation: Windows, Linux, Mac; Getting started
- Basics: About FreeCAD, Workbenches, Preferences, Document structure, Interface Customization, Properties, Mouse Model; Tutorials
- Workbenches: Arch, Draft, FEM, Image, Inspection, Mesh, OpenSCAD, Part, PartDesign, Path, Plot, Points, Raytracing, Reverse Engineering, Robot, Ship, Sketcher, Spreadsheet, Start, Surface workbench, TechDraw, Test Framework, Web
- Scripting: Introduction to Python, FreeCAD scripting tutorial, FreeCAD Scripting Basics, How to install macros, Gui Command, Units Modules: Builtin modules, Workbench creation, Installing more workbenches Meshes: Mesh Scripting, Mesh Module Parts: The Part Module, Topological data scripting, PythonOCC, Mesh to Part Coin scenegraph: The Coin/Inventor scenegraph, Pivy Qt interface: PySide, Using the FreeCAD GUI, Dialog creation Parametric objects: Scripted objects Other: Code snippets, Line drawing function, Embedding FreeCAD, FreeCAD vector math library, Power users hub, Python, Macros, FreeCAD Scripting Basics, Topological data scripting