在win10下编译fc

Chinese forum
johnwang
Posts: 457
Joined: Sun Jan 27, 2019 12:41 am

在win10下编译fc

Postby johnwang » Wed Mar 18, 2020 11:04 am

参考这一贴 https://forum.freecadweb.org/viewtopic.php?f=4&t=38240

1. 下载:

https://github.com/FreeCAD/FreeCAD下载源代码压缩包
https://github.com/FreeCAD/FreeCAD/rele ... g/0.19_pre下载第三方库包。是这个文件FreeCADLibs_12.1.4_x64_VC15.7z,目前版本是12.1.4

我的下载文件都存在下载目录里。就地用7z软件解压。解压出两个文件夹。
C:\Users\ian\Downloads\FreeCAD-master
C:\Users\ian\Downloads\FreeCADLibs_12.1.4_x64_VC15

2. 在c:\下,建一个c:\Build_win10的空目录。编译的东西将全存在这个建造目录里。

3. 运行cmake-gui文件

指定源程序路径和建造文件路径。
cm1.jpg
cm1.jpg (85.13 KiB) Viewed 1262 times
先点configure配置。

config2.jpg
config2.jpg (38.13 KiB) Viewed 1894 times
c编译器最好是用vs2017, 因为第三方库是用它编译的。选64位。库是64位的。

配置时如出现Unknown CMake command "generate_from_xml",根据https://forum.freecadweb.org/viewtopic.php?t=1221,是原代码目录选错了,不是freecad_master/src,而是freecad_master/本身。

4. 在cmake-gui里search里输入FREECAD_LIBPACK_DIR,指定第3方库的位置。如果advanced没有打勾,请先打勾选中。
再在cmake-gui里search里输入BUILD_QT5,选中。

按configure再次配置。

配置成功后,按generate生成。

5.generate成功后, 点击Open Project来启动Visual Studio 2017,同时打开了刚刚创建的工程文件。
在上部中间工具条里把目标从debug改成release, 在右部Solution Explorer窗口里,右键点All Build目标,选Build开始编译。这个需要很长时间才能完成。
vs.jpg
vs.jpg (116.63 KiB) Viewed 1270 times
现在freecad就编译好了。这时还需要把运行库拷贝到bin目录里。按如下操作:

在cmake-gui里search里输入FREECAD_COPY,如果advanced没有打勾,请先打勾选中。
在列出的选项里,选中如下两项:
FREECAD_COPY_DEPEND_DIRS_TO_BUILD
FREECAD_COPY_LIBPACK_BIN_TO_BUILD
然后再按configure,它会把需要的运行库拷贝到需要的地方。
copy.jpg
copy.jpg (39.95 KiB) Viewed 1265 times
现在你可以在c:\Build_win10\bin下,找到freecad.exe, 双击它就可以用你刚编译好的freecad了。
Last edited by johnwang on Wed Jun 24, 2020 2:48 am, edited 17 times in total.
paullee
Posts: 2663
Joined: Wed May 04, 2016 3:58 pm

Re: 在win10下编译fc

Postby paullee » Sat Mar 21, 2020 2:11 am

很好 :D

會在Linux 做嗎? 改Logo 可以嗎 ?
fc_tofu
Posts: 654
Joined: Sun Jan 05, 2020 4:56 pm

Re: 在win10下编译fc

Postby fc_tofu » Sat Mar 21, 2020 6:23 pm

非常感谢。 :D
请问VS2017是要另外下载吗?
johnwang
Posts: 457
Joined: Sun Jan 27, 2019 12:41 am

Re: 在win10下编译fc

Postby johnwang » Sat Mar 21, 2020 8:13 pm

fc_tofu wrote:
Sat Mar 21, 2020 6:23 pm
非常感谢。 :D
请问VS2017是要另外下载吗?
是的。还需要申请一个ms的账号。

Cmake要用3. 15.x老版。新版已经3. 17了。

编译需要好几个小时。
paullee
Posts: 2663
Joined: Wed May 04, 2016 3:58 pm

Re: 在win10下编译fc

Postby paullee » Sun Mar 22, 2020 4:14 am

我記得在Linux 上做過 (0.18_pre) 加上 -j [內核數目] 可多工編譯,好像不用一小時…半小時 ?
fc_tofu
Posts: 654
Joined: Sun Jan 05, 2020 4:56 pm

Re: 在win10下编译fc

Postby fc_tofu » Sun Mar 22, 2020 4:08 pm

johnwang wrote:
Sat Mar 21, 2020 8:13 pm
...
Cmake要用3. 15.x老版。新版已经3. 17了。
...
细节真多,谢谢提示。
johnwang
Posts: 457
Joined: Sun Jan 27, 2019 12:41 am

Re: 在win10下编译fc

Postby johnwang » Mon Mar 23, 2020 10:16 am

fc_tofu wrote:
Sun Mar 22, 2020 4:08 pm
johnwang wrote:
Sat Mar 21, 2020 8:13 pm
...
Cmake要用3. 15.x老版。新版已经3. 17了。
...
细节真多,谢谢提示。
这个是原始的介绍

https://wiki.freecadweb.org/Compile_on_Windows#CMake
johnwang
Posts: 457
Joined: Sun Jan 27, 2019 12:41 am

Re: 在win10下编译fc

Postby johnwang » Wed Jun 24, 2020 2:44 am

更新了一下。