一、素材工具:
1)Visual Studio 2019: Visual Studio 2019 社区版 – 下载最新免费版本
2)CMake: Download | CMake
3)(依赖库)LibPack: https://github.com/FreeCAD/FreeCAD/releases
4)(源代码)Source Code:https://github.com/FreeCAD/FreeCAD/releases
(https://github.com/FreeCAD/FreeCAD/releases中 下载文件以指出)
选择0.19.1版本
下载两个红箭头指出的文件即可
二、CMake过程
Delete Cache一下。(CMake file工具栏)
Step1:新建编译后的目标文件夹(例名:最好和源码和依赖库放一个文件夹下,好管理)
Step2:点击configure配置,选择vs2019 ×64
Step3:点击configure配置,出现的红区中修改(会弹出一个报错框,点掉就行)
BUILD_ENABLE_CXX_STD C++14
BUILD_QT5 打勾
FREECAD_LIBPACK_DIR 改为依赖库所在的绝对路径
(例:D:\CAD\FreeCAD-0.19.1\FreeCADLibs_12.5.3_x64_VC17)
Step4: 再次点击configure配置,出现的红区中修改
FREECAD_COPY_DEPEND_DIRS_TO_BUILD 打勾
FREECAD_COPY_LIBPACK_BIN_TO_BUILD 打勾
FREECAD_COPY_PLUGINS_BIN_TO_BULD 打勾
Step5: 点击configure配置,出现“Copying libpack 'bin' directory to build directory.”表示成功。 该步骤是将依赖库所需的文件copy到cmake编译的bin件夹下,文件较多,耐心等待,直 至Generate可点击。
Step6:点击Generate。
Generate完成后CMakeFiles下会生成大量的文件。(完成如下图)
三、编译教程
官方教程:Compile on Windows:https ://wiki.freecadweb.org/Compile_on_Windows
编译器要遵循相应的Lib库: 相应的源码要跟相应的Lib库对应,因为编译平台不一样可能会出问题。(应该是编译命名不一样会)。相应的源码和库的下载位置:https://github.com/FreeCAD/FreeCAD/releases
Note: It is highly recommended to compile FreeCAD with the compiler version the LibPack is designed for. For example, you might run into problems compiling FreeCAD 0.19 using MSVC 15 because the LibPack for 0.19 is designed to be built with MSVC 17.
四、可能编译错误
错误一: 源码FreeCAD-0.19.1(编译前最好先查看下)
直接编译可能不成功,显示语法错误,要修改源码文件夹下\src\Mod\PartDesign\APP\ FeatureHole.cpp 中三处地方修改为一下。FreeCAD-0.19.1编译成功后是109个项目。
//Line1889:
throw Base::IndexError(std::string("Thread type '") + thread_type_string + "' unsupported");
//Line1902:
throw Base::IndexError(std::string("Cut type '") + cut_type_string + "' unsupported");
//Line1932:
std::cerr << "Failed reading '" << f.filePath() << "' with: "<< e.what() << "\n";
备注:修改错误后,光重新编译PartDesign是不行的,虽然生成成功6个,但是必须要重新ALL_BUILD才能建立起完整的整个。
错误二:pcl_macros.h文件报错,提示: “log2f”: 内部函数,不能定义
定位到错误文件,将log2f改为log2_f
五、运行
在vs中找到FreeCADMain右键设置为启动项。再次运行即可。