VTK导入导致Python崩溃

0 投票
1 回答
514 浏览
提问于 2025-04-17 13:31

我按照这些说明安装了vtk,并在CMakeCache.txt中进行了设置。

BUILD_SHARED_LIBS:BOOL=ON
PYTHON_EXECUTABLE:FILEPATH=/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python

(实际上是在ipython下运行的python)

VTK_WRAP_PYTHON:BOOL=ON

编译是成功的,但当我转到python时,我得到了:

Python 2.7.3 (default, Nov 28 2012, 13:43:07) 
Type "copyright", "credits" or "license" for more information.

IPython 0.13.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: import pkgutil

In [2]: package = pkgutil.get_loader("vtk")

In [3]: package.filename
Out[3]: '/usr/local/lib/python2.7/site-packages/VTK-5.10.1-py2.7.egg/vtk'

In [4]: import vtk
Fatal Python error: Interpreter not initialized (version mismatch?)
Abort trap

有没有人知道怎么回事?

1 个回答

0

我之前也遇到过类似的问题,不过我的Python崩溃时没有给我任何错误信息。我们的情况有几个不同之处,比如我用的是64位的Windows 7专业版,而我的导入问题是在我同时安装了64位Python和32位Python后才出现的。我没有对我的32位Python安装或VTK文件做任何改动,但在这种配置下就是无法再正常工作。

最后,我只是重新编译了VTK,指向了32位的Python安装,这样似乎解决了问题。我们的麻烦很可能完全没有关系,你可能已经解决了你自己的问题,但我觉得还是应该告诉你。

不过,有一点很奇怪,就是pkgutil命令的输出。'/usr/local/lib/python2.7/site-packages/VTK-5.10.1-py2.7.egg/vtk'是你的VTK构建目录吗?当我尝试同样的命令时,我得到的是'C:\Users\u0079931\64bit\VTK-bin\Wrapping\Python\vtk',这和你链接的说明更相似。你的PYTHON_PATH设置正确吗?

撰写回答