J'essaie d'utiliser buildout pour un paquet Python qui, lorsqu'il est utilisé, dépend de 2 modules d'extension : dbus-python y pygobjet . Les deux modules font échouer buildout : dbus-python ne dispose pas d'un setup.py
tandis que pygobject
en a un mais dont l'utilisation est déconseillée -- à la place configure, make, make install doit être utilisé. Ainsi, buildout n'est pas capable d'installer ces dépendances dans l'environnement de développement.
Voici mon buildout.cfg
:
[buildout]
develop = .
parts = eggs
[python]
recipe = zc.recipe.eggs
interpreter = python
eggs = foobar
où setup.py
pour le foobar
Le paquet contient :
install_requires=['dbus-python', 'pygobject'],
En cherchant une solution, je suis tombée sur cette recette z3c.recipe.scripts
et son la capacité d'utiliser les œufs installés à l'échelle du système . Cependant, lorsqu'il est appliqué à mon buildout.cfg
..
[python]
recipe = z3c.recipe.scripts
include-site-packages = true
allowed-eggs-from-site-packages = pygobject, dbus-python
interpreter = python
eggs = foobar
cela semble n'avoir aucun effet (l'échec persiste), bien que les deux paquets ( dbus , gobjet ) sont installés dans mon système Python. Il en va de même lorsque je supprime le allowed-eggs..
ligne.
Ma question : Est-ce que je me suis trompé sur le plan de la conception ou est-ce qu'il y a une erreur dans mon buildout.cfg
?
Je sais qu'il y a zc.recipe.cmmi
une recette qui installe les œufs en utilisant configure, make, make install . Cependant, une simple référence aux œufs Python du système serait suffisante dans mon cas. Je n'ai pas besoin d'un environnement 100% reproductible généré par buildout. Aussi, dbus-python y pygobjet sont installées par défaut sur la plupart des systèmes de bureau Linux, l'environnement dans lequel foobar
est destiné à être utilisé.