* Update spec file use custom macro to package the source file reformat freecad.spec add script for build from source archive use bcond macro use standard builddir and don't delete it to fast local rebuild configure cmake correctly to avoid moving file later add tests remove python bytecompile is default build in RelWithDebInfo to generate correctly the debuginfo package (debug info will be stripped from standard package and a debuginfo package will be generated export dev package for ondselsolver export libondselsolver use new macro for filtering requires provides simplify regexp. remove delete unused source enable gui tests other fix Disabile gui test to avoid timeout add timeout to tests remove rpkg macro for archive extraction refactor prepare for packit small fix Update package/fedora/freecad.spec Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> small fix change packit configuration fix format fix packit /packit build authomatic build on commit remove libkdtree++-devel missing in rawhide * add packit configuration escape changelog for spec file add new build on release simplify configuration to use only packit remove script used to have only a spec file and build with 3 system rpkg custom bash script packit * add tests in test-farm add test that read build time tests result use default build type for pr build and always print buiild time tests result fix and disable option without bundled_gtest Update package/fedora/freecad.spec Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> Update package/fedora/freecad.spec Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> * add github action Update fedora-daily.yml Potential fix for code scanning alert no. 203: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Update spec file use custom macro to package the source file reformat freecad.spec add script for build from source archive use bcond macro use standard builddir and don't delete it to fast local rebuild configure cmake correctly to avoid moving file later add tests remove python bytecompile is default build in RelWithDebInfo to generate correctly the debuginfo package (debug info will be stripped from standard package and a debuginfo package will be generated export dev package for ondselsolver export libondselsolver use new macro for filtering requires provides simplify regexp. remove delete unused source enable gui tests other fix Disabile gui test to avoid timeout add timeout to tests remove rpkg macro for archive extraction refactor prepare for packit small fix Update package/fedora/freecad.spec Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> small fix change packit configuration fix format fix packit /packit build authomatic build on commit remove libkdtree++-devel missing in rawhide * add packit configuration escape changelog for spec file add new build on release simplify configuration to use only packit remove script used to have only a spec file and build with 3 system rpkg custom bash script packit * add tests in test-farm add test that read build time tests result use default build type for pr build and always print buiild time tests result fix and disable option without bundled_gtest Update package/fedora/freecad.spec Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> Update package/fedora/freecad.spec Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> * add github action Update fedora-daily.yml Potential fix for code scanning alert no. 203: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * tentative fix test * add verbose failed tests * fix ctest * Remove error file if 2 time is successful * Update plan.fmf add IfcOpenShell-python3 * Update .packit.yaml Update freecad.spec Update plan.fmf Update .packit.yaml Update plan.fmf * Update freecad.spec * restore version * add rpm cmake preset * update tests * add qt6-assistant deps * use xvfb-run for QuantitySpinBox test * fix ctest command * clean * restore Addon Manager: Add defusedxml dependency --------- Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Your own 3D Parametric Modeler
Website • Documentation • Forum • Bug tracker • Git repository • Blog
Overview
-
Freedom to build what you want FreeCAD is an open-source parametric 3D modeler made primarily to design real-life objects of any size. Parametric modeling allows you to easily modify your design by going back into your model history to change its parameters.
-
Create 3D from 2D and back FreeCAD lets you sketch geometry-constrained 2D shapes and use them as a base to build other objects. It contains many components to adjust dimensions or extract design details from 3D models to create high quality production-ready drawings.
-
Designed for your needs FreeCAD is designed to fit a wide range of uses including product design, mechanical engineering and architecture, whether you are a hobbyist, programmer, experienced CAD user, student or teacher.
-
Cross platform FreeCAD runs on Windows, macOS and Linux operating systems.
-
Underlying technology
- OpenCASCADE A powerful geometry kernel, the most important component of FreeCAD
- Coin3D library Open Inventor-compliant 3D scene representation model
- Python FreeCAD offers a broad Python API
- Qt Graphical user interface built with Qt
Installing
Precompiled packages for stable releases are available for Windows, macOS and Linux on the latest releases page.
On most Linux distributions, FreeCAD is also directly installable from the software center application.
For weekly development releases visit the releases page.
Other options are described on the wiki Download page.
Compiling
FreeCAD requires several dependencies to correctly compile for development and production builds. The following pages contain updated build instructions for their respective platforms:
Reporting Issues
To report an issue please:
- Consider posting to the Forum, Discord channel, or Reddit to verify the issue;
- Search the existing issues for potential duplicates;
- Use the most updated stable or development versions of FreeCAD;
- Post version info from
Help > About FreeCAD > Copy to clipboard; - Restart FreeCAD in safe mode
Help > Restart in safe modeand try to reproduce the issue again. If the issue is resolved it can be fixed by deleting the FreeCAD config files. - Start recording a macro
Macro > Macro recording...and repeat all steps. Stop recording after the issue occurs and upload the saved macro or copy the macro code in the issue; - Post a Step-By-Step explanation on how to recreate the issue;
- Upload an example file (FCStd as ZIP file) to demonstrate the problem;
For more details see:
Note
The FPA offers developers the opportunity to apply for a grant to work on projects of their choosing. Check jobs and funding to know more.
Usage & Getting Help
The FreeCAD wiki contains documentation on general FreeCAD usage, Python scripting, and development. View these pages for more information:
The FreeCAD forum is a great place to find help and solve specific problems when learning to use FreeCAD.
This project receives generous infrastructure support from
and KiCad Services Corp.