2
假設我有一個項目依賴於只能通過系統軟件包管理器安裝的軟件包(例如綁定到C庫),因此install_requires
不起作用。正確的Python打包與外部軟件包依賴關係
目前,如果導入失敗,我嘗試導入setup.py
中的所有軟件包,並調用sys.exit()
並帶有正面退出代碼。這是好的做法還是有更好的方法來完成這一點?
假設我有一個項目依賴於只能通過系統軟件包管理器安裝的軟件包(例如綁定到C庫),因此install_requires
不起作用。正確的Python打包與外部軟件包依賴關係
目前,如果導入失敗,我嘗試導入setup.py
中的所有軟件包,並調用sys.exit()
並帶有正面退出代碼。這是好的做法還是有更好的方法來完成這一點?
您可以創建本地系統封裝(deb
,rpm
等),並描述了它的依賴(這是在你的情況下,C庫)。您可以檢查Debian packages packing manual(或者某些其他經理的軟件包,具體取決於您使用的系統)。
依賴通過'apt','yum'等可以安裝。但是我需要找到一種方法來在我的'setup.py'中指定這些依賴。或者如果沒有安裝,就會優雅地失敗。 – matthias 2013-05-14 13:50:22
是的,如果以這種方式安裝依賴項,則可能應爲您的包創建apt和yum版本。 – 2013-05-14 13:52:33
我在想這個,並得出這樣的結論:這在技術上是一個正確的解決方案,但需要我很多的努力。對於非常小的和「不太重要」的項目尤其如此。 – matthias 2013-05-15 06:53:41