2

使用 python3 将 FreeCAD.so 导入我的模块时出现问题。什么时候用 python2 做同样的事情——它可以工作。

源代码很简单:

import FreeCAD as fc
print(fc)
assert False

我已经/usr/lib/freecad/lib/在 $PYTHONPATH

Python2:   
name@name:/mnt/E0CA2445623DA14/Temp/GDrive/__PROJECTS/204_TORPEDO/PIM/trpdalgs/app/Laymodel$ python2 __PetrV_Laymodel.py
    FreeCAD 0.16, Libs: 0.16R6707 (Git)
    Fasteners workbench Loaded
    Sheet Metal workbench loaded
    <module 'FreeCAD' from '/usr/lib/freecad/lib/FreeCAD.so'>
    Traceback (most recent call last):
      File "__PetrV_Laymodel.py", line 8, in <module>
        assert False
    AssertionError


Python3:   
name@name:/mnt/E0CA2445623DA14/Temp/GDrive/__PROJECTS/204_TORPEDO/PIM/trpdalgs/app/Laymodel$ python3 __PetrV_Laymodel.py
        Traceback (most recent call last):
          File "__PetrV_Laymodel.py", line 6, in <module>
            import FreeCAD as fc
        ImportError: dynamic module does not define module export function (PyInit_FreeCAD)
4

2 回答 2

3

FreeCAD 还不支持 python3。这正在处理中,应该在下一个版本中可用

于 2017-01-25T15:41:07.403 回答
2

随着时间的流逝和 FreeCAD 的发展,我们有了一个 Python3.6 的 docker 镜像:

https://github.com/ZhukovGreen/docker-freecad-cli

它有一个python3.6版本的freecad-cli。还没有图形界面

于 2017-10-25T14:36:57.853 回答