Как написать a setup.py для программы, которая зависит от пакетов вне pypi
-
12-09-2019 - |
Вопрос
Например, что, если PIL
, python-rsvg
и libev3
являются ли зависимости программы?Этих зависимостей нет в индексе pypi, последние две являются именами пакетов Debian.
Решение
Просто не помещайте их в свои зависимости и не документируйте это в своей установке или README.
Другие советы
Вы могли бы использовать setuptools.setuptools позволяет вам добавлять любой тип устанавливаемого Python (любой пакет с поддержкой distutils / setuptools) в качестве зависимости, независимо от того, находится ли он в PyPI или нет.
Например, чтобы зависеть от PIL 1.1.6, используйте что-то вроде:
setup(...,
install_requires = ["http://effbot.org/downloads/Imaging-1.1.6.tar.gz"],
...)
Видишь инструменты настройки документы для получения дополнительной информации.
Если вы упаковываете что-то для установки в Debian (как подразумевается), лучший способ управления зависимостями - это упаковать вашу программу как .deb и выразить зависимости способом Debian.(Обратите внимание, PIL доступен в Debian как python-imaging
.)
Поскольку setup.py тоже является кодом Python, вы просто можете загрузить и запустить setup.py в этих пакетах.