2017-10-18 122 views
0

无法通过pip安装VTK库。 虽然它可以从源代码编译和安装。如何将Python3安装的VTK包含到setup.py中?

我的Python项目依赖于VTK。 我希望它通过从项目的根目录调用pip install .来自动安装VTK。 在这种情况下setup.py文件应该能够所需版本

  • 下载VTK源从GitHub
  • 呼叫cmake为了准备建立
  • 编译源代码和创建Python绑定
  • 安装所需文件到目前使用site-packages(例如,如果我使用virtualenv,pipenvpyenv,则不应该将其安装到/usr/local/lib/python3/site-packages中)

可能吗? 如果是,我该怎么做?

回答

0

原则上,您可以在安装文件中包含任何可执行代码。然而,在setuptools documentation的哪个地方我找不到可以解决问题的信息。

此外,vtk的安装过程有点复杂,这就是kitware首先使用cmake的原因。

所以,简短的答案是“不”或“不这样做”。

而且,这些问题你会遇到:

  1. 用户会期待一个透明的安装。但是,基于cmake构建vtk指令来实现跨平台构建过程将阻止您设置自定义(vtk路径,Python解释器路径,特定于平台的C标志)。

  2. 安装过程将更难调试。用户会因VTK构建问题而来找你。

  3. Kitware themselve不建议在pypi上使用vtk。这表明,要实现这一目标需要太多的时间,不可能或太脆弱。

如果你想看到一个流行的Python项目依赖于vtk,mayavi。 installation instructions请求事先安装vtk。