FreeCAD是一款基于opencascade库开发的开源软件,近期需要研究它调用了OCC中的哪些方法,因此需要编译运行一下,于是在网上结合了几个教程终于跑出来了,于是给几位大佬的博客以及我的心得详细的整合了一下,最下方有参考链接
首先需要的四件套,下面我也会给一个四合一的大礼包,图方便可以直接下四合一的:
1.CMake-3.12.0-win64-x64 下载地址:https://github.com/Kitware/CMake/releases?after=v3.12.2
2.FreeCAD的开源代码 FreeCAD-0.16 下载地址:https://github.com/FreeCAD/FreeCAD/archive/0.16.zip
3.FreeCAD的第三方库编译集成包,我用的是64位的FreeCADLibs_11.3_x64_VC12
下载地址:
64位:https://github.com/FreeCAD/FreeCAD/releases/download/0.16/FreeCADLibs_11.3_x64_VC12.7z
32位: https://github.com/FreeCAD/FreeCAD/releases/download/0.16/FreeCADLibs_11.3_x86_VC12.7z
4.VS2013,也有大佬用其他版本的VS跑出来了,我是用2013跑的 下载安装教程:https://blog.csdn.net/qq_30534935/article/details/84072575
PS:VS在一个电脑上是可以安装多个版本的,但是一个项目被一个版本的VS打开过后应该就不能被其他版本的VS打开了。
大礼包百度网盘下载地址
链接:https://pan.baidu.com/s/12YVhxrcngYhZ1aG5Mmx6pA
提取码:29ew
在VS2013安装好了之后,接下来就可以开始准备就绪,开始搞!
1.把CMake解压后的文件夹和第三方库编译包解压
2.新建一个文件夹,我命名为freeCAD,把开源代码FreeCAD-0.16解压后放进去,再在freeCAD文件夹中新建一个文件夹用来存编译后的生成文件,我将其命名为freeCAD-Build,到目前为止截图如下:
e盘中存了第三方库和CMake
freeCAD中存了源码以及用来存储编译后生成代码的新文件夹
3.打开E:\cmake-3.12.0-win64-x64\bin中的cmake-gui.exe,并在选中源文件和生成文件目录:
点击下方的configure,会报错Error in configuration process, project files may be invalid并出现以下情况:
此外,在我编译成功前还有两种报错,一种我一开始选择的FreeCAD源码版本是0.17的,所以在下面打印台里提示我找不到我的CMakeLists.txt文件;另外一种是版本都没问题可是configure后不出现红色报错目录列表,最终发现是我在解压压缩包以后电脑自动在FreeCAD-0.16文件夹外面新生成了一个FreeCAD-0.16文件夹,如下图:
这个错误比较蠢,解压的时候一定要细心!
继续说!在红色报错目录列表里找到第三方库的引入路径,并改为下面的:
再次点击configure后,打印台会打印configure done,之后再点击generate,打印台会打印configure done,然后点击open project,选择用VS2013打开,流程如下:
4.在VS2013中的调试那里选择Release,然后点击本地Windows调试器:
5.漫长的等待过后,编译会报错,不用理他,我们只需要第一次编译帮我们在生成文件那个文件夹里生成一个Bin目录而已,接下来将第三方库E:\FreeCADLibs_11.3_x64_VC12\bin路径下所有文件复制到生成文件的Bin目录E:\freeCAD\FreeCAD-Build\bin里,然后回到VS2013,右键右侧解决方案里ALL_BUILD,点击重新生成:
6.漫长的等待之后就ok了,这时候去找E:\freeCAD\FreeCAD-Build\bin里就能找到FreeCAD.exe文件了,打开就行:
有用的话希望点个赞哦,后续我也会一直学习OCC相关内容,有兴趣的 朋友可以一起讨论学习~
参考链接:
https://blog.csdn.net/chen_jian_jane/article/details/86506047
https://blog.csdn.net/luchengbiao/article/details/85291556
https://blog.csdn.net/Yangxk/article/details/81166598
https://blog.csdn.net/qq_30534935/article/details/84072575