簡體   English   中英

如何將用於Python3安裝的VTK包含到setup.py中?

[英]How to include VTK for Python3 installation into setup.py?

無法通過pip安裝VTK庫。 但是,可以從源代碼編譯和安裝它。

我的Python項目取決於VTK。 我希望它通過調用pip install .自動安裝VTK pip install . 從項目的根目錄。 在這種情況下, setup.py文件應該能夠

  • 從GitHub下載所需版本的VTK來源
  • 調用cmake以准備構建
  • 編譯源代碼並創建Python綁定
  • 將所需的文件安裝到當前使用的site-packages (例如,如果我使用virtualenvpipenvpyenvpipenv應將其安裝到/usr/local/lib/python3/site-packages

可能嗎? 如果是,我該怎么做?

原則上,您可以在安裝文件中包含任何可執行代碼。 但是,在setuptools文檔中找不到任何可以解決此問題的信息。

另外,vtk的安裝過程有點復雜,這就是為什么kitware首先使用cmake的原因。

因此,簡短的答案是“不”或“不這樣做”。

此外,您將遇到的問題:

  1. 用戶將期望透明安裝。 但是,基於vtk的cmake構建指令來實現跨平台的構建過程將阻止您設置自定義設置(vtk的路徑,Python解釋器的路徑,特定於平台的C標志)。

  2. 安裝過程將很難調試。 用戶會來找您解決VTK構建問題。

  3. 套件軟件本身不建議在pypi上使用vtk。 這表明要實現此目標需要花費大量時間,不可能或太脆弱。

如果您希望看到一個流行的依賴於vtk的Python項目,那就有mayavi。 安裝說明要求事先安裝vtk。

看起來VTK已經通過pypi展示了它們的官方綁定 ,因此我可以在setup.py文件中使用它,只需將其附加到install_requires列表中即可。 在我的項目中運行良好,不再需要編譯。

但是,在mayavi文檔中有一個警告

最新的VTK滾輪可在所有主要平台(Windows,MacOS和Linux)上使用,但僅適用於64位計算機。 所有這些操作系統都完全支持Python 3.x,而MacOS和Linux上則完全支持Python2.7.x。 如果您不走運,並且不支持您的平台,那么您將需要使用自己的特定發行版自行安裝VTK,如《一般構建和安裝說明》中所述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM