FreeCAD-0.19编译记录

本文详细描述了如何在Windows平台上使用LibPack-0.19Version1.0编译FreeCAD-0.19,包括准备工作、所需库、CMake配置及遇到的问题解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1. 准备工作

2. 材料说明

3. 编译

4. 运行

5. 总结


本文记录了使用 FreeCAD 提供的依赖库包 LibPack-0.19 Version 1.0 在 Windows 平台下进行 FreeCAD-0.19 编译的过程,并对所遇问题进行解决说明,供参考。

1. 准备工作

在开始编译前,一定要仔细阅读官方的文档,其中对编译各个事项均做了详细说明:

Compile on Windows - FreeCAD Documentation

下载 FreeCADv0.19 代码,:

FreeCAD-0-19

下载库包 LibPack version 1.0:

FreeCAD-LibPack

其他工具准备:

CMake、Git、VS2017

2. 材料说明

LibPack version 1.0 的发布页面对其中包含的库进行了简单说明,其中有些库尽管也包含在包内,但作者未进行说明。

  • OpenSSL 3.0.0
  • LibSSL 1.1.1
  • Curl
  • Qt 5.15.2
  • PySide2 build against Qt 5.15
  • Coin3D 4.0
  • Pivy
  • Python 3.8
  • OpenCascade 7.5.3 (with Fillet fix from blobfish / occt · GitLab provided by Chris Hennes)
  • Boost 1.67

其中所用 OCCT 的版本为7.5.3,Python所用的版本为3.8。

3. 编译

将下载的 FreeCAD 源码、LibPack放置好,新建 build 目录,配置如下

使用CMake进行配置,设置源码目录、生成目录。点击“配置”后设置编译器、生成平台。结束后再次点击“配置”。

此时会出现如下报错,是因为 CMake 未能自动检测到 LibPack目录所致。

FREECAD_LIBPACK_DIR 条目下设置正确的 LibPack 目录即可,再次配置。

接下来,系统会报出 Qt 版本不适配的错误,设置 BUILD_QT5 条目为 True 即可。再次配置。

至此,我们就可以成功配置了。另有三个“FREECAD_COPY”开头的条目,分别用于将依赖库、LibPack 二进制文件、Qt插件文件拷贝至build目录,为免去后续环境目录的配置,我们将这三个选项设置为 True。

另有 FREECAD_USE_MPCOMPILE_FLAG 的条目,用于启用多处理器编译,加快编译,我们也激活该选项。 

本次编译仅为调试FreeCAD,关于安装的选项未做设置。 

点击“生成”,在build目录下生成解决方案文件.sln。 使用 vs2017 打开该文件,生成“ALL_BUILD”项目,即可生成 FreeCAD。

4. 运行

项目 “FreeCADMain” 是程序的入口,将此项目设置为启动项,启动调试器,即可进入 FreeCAD。

设置断点,即可进行调试。

5. 总结

借助 LibPack ,FreeCAD的编译容易很多,不需要再在本地依据版本手动配置各种依赖。CMake的设置有以下要点,也可以一次设置完毕。

  • 设置 FREECAD_LIBPACK_DIR 为解压后的 LibPack 目录
  • 设置 BUILD_QT5 为 True
  • 设置 FREECAD_COPY_DEPEND_DIRS_TO_BUILD 为True
  • 设置 FREECAD_COPY_LIBPACK_BIN_TO_BUILD 为True
  • 设置 FREECAD_COPY_PLUGINS_BIN_TO_BUILD 为True

使用上述方法即可获取一份能调试的 FreeCAD,方便学习 FreeCAD。其他版本的 FreeCAD 编译过程类似。如果想进一步通过 FreeCAD 调试 OCC,可以先编译一套与 LibPack 中 OCC 版本匹配的OCC,然后将所得pdb文件拷贝至 build\bin 目录下。其中编译OCC本身、版本匹配、Release\Debug 后缀之分等问题应也有不少坑要踩。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值