我最近将系统更新为Ubunutu 20.04,而我的python现在是3.8。从那以后,我所有的import vtk
行都不起作用,
ModuleNotFoundError: No module named 'vtk'
我尝试了apt-get python-vtk
,pip3 install vtk
以及几乎所有的标准终端安装命令。毫无疑问,他们都无法找到包裹。我一直在寻找通过网络进行分类的方法,但是没有成功。
我熟悉从源代码构建Kitware(Cmake和Paraivew)的东西,所以我这样做了:
git clone https://github.com/Kitware/VTK.git
mkdir VTK/build
cd VTK/build
ccmake ..
make
make install
一些相关的cmake选项为BUILD_SHARED_LIBS=ON
,CMAKE_BUILD_TYPE=Release
,CMAKE_INSTALL_PREFIX=/usr/local
,python3_EXECUTABLE=/usr/bin/python3.8
,VTK_WRAP_PYTHON=ON
,Python3_INCLUDE_DIR=/usr/include/python3.8
,Python3_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.8.so
,和VTK_PYTHON_OPTIONAL_LINK=ON
。
我能够构建它,并且我假设我应该打开python wrapping
。安装后,我发现我仍然无法运行python文件,仍然遇到与上述相同的错误。我觉得我只需要告诉python去哪里获取vtk模块,这是正确的吗?如果是这样,它在哪里,它的名字是什么,我如何使python链接到它?还是我错过了一些事情或做的事情真的很愚蠢?
如果有一种apt-get
或pip3 install
的方式更可取,但是我想我已经用尽了所有Google搜索发现的尝试。
谢谢。
答案 0 :(得分:5)
将apt-get install python3-vtk7
(https://packages.ubuntu.com/focal/python3-vtk7)用于Ubuntu 20.04。
python-vtk
软件包仅可用于ubuntu 16.04(https://packages.ubuntu.com/xenial/python-vtk)。
对于python 3.8,没有vtk pip
轮子,尽管在旧版本的python中确实存在。参见https://pypi.org/project/vtk/#files
答案 1 :(得分:2)
我遇到了同样的问题:我已经从Kitware构建了VTK,但随后在python中导入vtk时出现错误。我固定在vtk
中添加$PYTHONPATH
,您应该在VTK/build/lib
下找到它。现在一切对我来说都很好!
编辑:我还发现在Kitware网站上可以使用python3.8的轮子,然后:
pip3 install https://www.vtk.org/files/release/9.0/vtk-9.0.0-cp38-cp38-linux_x86_64.whl
应该也能工作