使用 Python 3.4 的 OpenMesh?

OpenMesh with Python 3.4?

我对 python 及其 C++ 包装器(如 boost python)比较陌生。 我试图让 OpenMesh C++ 库 python 绑定与 python 3.

一起工作

有人知道它是否已经可行吗? OpenMesh 变更日志中有一些提示,一年前添加了一些针对 python 3 的测试。 https://graphics.rwth-aachen.de:9000/OpenMesh/OpenMesh/commit/c6382d800ffb9b48347e748a32e658697125d5b2

所以我尝试用

构建最新的 BoostPython
./bootstrap.sh --with-libraries=signals,thread,python --with-python=/usr/bin/python3.4
./b2

将所有环境变量设置为 http://www.openmesh.org/Daily-Builds/Doc/a00036.html

OpenMesh 完美地构建了一个美妙的 openmesh.so .

但是尝试将它与 Python3 解释器输出一起使用:

>>> import sys
>>> sys.path.append('/home/.../OpenMesh-4.1/build/Build/python')
>>> import openmesh
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: dynamic module does not define init function (PyInit_openmesh)

Python 2 工作正常,所以这是不可能的还是我做错了什么?

感谢和问候

显然你需要 cmake 3.x 来构建 python 3.x。 -> 已解决:)

以防万一有人再次使用 Python3 发现 OpenMesh,我为 Anaconda Python 3.5 和 3.6 构建了它并上传到 github。

https://github.com/qd-cae/Openmesh-Anaconda-Precompiled