在 Windows 上编译 FreeCAD 比较复杂,但按步骤来是可以稳定完成的。我给你一套实战可用流程(适合 Windows 10/11),尽量避免踩坑。
一、推荐方案(最稳):使用 Conda + CMake + VS
1️⃣ 安装基础工具
你需要先准备:
- Visual Studio(建议 2022)
- 勾选:
- Desktop development with C++
- MSVC v143
- Windows SDK
- 勾选:
- CMake(>= 3.20)
- Git
- Anaconda 或 Miniconda
2️⃣ 创建 FreeCAD 编译环境
打开 Anaconda Prompt:
conda create -n freecad python=3.10
conda activate freecad
安装依赖(关键步骤):
conda install -c conda-forge \
freecad \
cmake \
ninja \
boost \
eigen \
oce \
pivy \
qt \
xerces-c \
coin3d \
vtk
👉 说明:
- conda-forge 已经帮你解决 90% 依赖问题
- 这是 Windows 成功率最高的方式
3️⃣ 获取源码
git clone https://github.com/FreeCAD/FreeCAD.git
cd FreeCAD
4️⃣ CMake 配置
创建 build 目录:
mkdir build
cd build
运行 CMake:
cmake .. -G "Visual Studio 17 2022" -A x64 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=%CONDA_PREFIX%
👉 关键点:
CONDA_PREFIX非常重要(依赖路径)- 否则会出现:
- 找不到
yaml-cpp - 找不到 Qt / Boost
- 找不到
5️⃣ 编译
cmake --build . --config Release
或者用 VS 打开 .sln 编译。
6️⃣ 运行
cd bin
FreeCAD.exe
二、常见坑(你很可能会遇到)
❌ 1. yaml-cpp 找不到
你之前已经遇到类似问题:
👉 解决:
conda install -c conda-forge yaml-cpp
或手动指定:
-Dyaml-cpp_DIR=%CONDA_PREFIX%/Library/lib/cmake/yaml-cpp
❌ 2. Qt 找不到
-DQt5_DIR=%CONDA_PREFIX%/Library/lib/cmake/Qt5
❌ 3. OCC / OCE 问题(几何内核)
FreeCAD 用:
- OpenCASCADE
建议直接用 conda:
conda install -c conda-forge occt
❌ 4. 编译非常慢
解决:
cmake --build . --config Release -- /m
(多核编译)
三、进阶:开发建议(你做光伏软件很关键)
既然你之前提到要做:
👉 基于 FreeCAD 开发光伏软件
建议:
✔ 重点模块
- Part(几何建模)
- Mesh(网格)
- FEM(仿真)
- Python API(二次开发核心)
✔ 推荐方式
用 Python 扩展:
import FreeCAD
import Part
👉 比直接改 C++ 快 10 倍
四、如果你想更快(推荐)
其实你可以不用编译,直接用:
conda install -c conda-forge freecad
然后做开发:
GUI 扩展
插件开发(Workbench)
Python 自动建模