Installer Python-Dbus dans virtualenv
Je suis en cours d'exécution d'une application dans un environnement virtuel qui a besoin d'accéder à DBus (pour interagir avec le Gestionnaire du Réseau, principalement).
J'ai essayé d'installer Dbus-Python avec easyinstall et pip, mais les deux échouent.
Quand j'essaie de le faire:
(myvirtualenv)borrajax@borrajax-computer:~/Documents/Projects/VirtualEnvs/current_env$ bin/pip install dbus-python
Pip hurle à m':
Downloading/unpacking dbus-python
Downloading dbus-python-1.1.1.tar.gz (596kB): 596kB downloaded
Running setup.py egg_info for package dbus-python
Traceback (most recent call last):
File "<string>", line 16, in <module>
IOError: [Errno 2] No such file or directory: '/home/borrajax/Documents/Projects/VirtualEnvs/current_env/build/dbus-python/setup.py'
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
IOError: [Errno 2] No such file or directory: '/home/borrajax/Documents/Projects/VirtualEnvs/current_env/build/dbus-python/setup.py'
----------------------------------------
Command python setup.py egg_info failed with error code 1 in /home/borrajax/Documents/Projects/VirtualEnvs/current_env/build/dbus-python
Storing complete log in /home/borrajax/.pip/pip.log
J'ai eu quelques problèmes avec le python dbus liaisons et leur "accessibilité" de mon Python modules dans le passé, donc je ne sais pas vraiment ce que peut être la meilleure façon de mettre en Dbus-Python dans un environnement virtuel. Quelqu'un a réussi? Ou quelqu'un a une idée sur comment faire?
Vous en remercie d'avance.
OriginalL'auteur BorrajaX | 2012-11-13
Vous devez vous connecter pour publier un commentaire.
Quand
pip
essaie d'installer un paquet, il semble poursetup.py
, quidbus-python
n'ont pas, de sorte que vous aurez à télécharger de la source et le compiler manuellement. Ne devrait pas être trop dur:ensuite, vous pouvez déplacer les fichiers compilés à votre virtualenv.
edit: en commençant par dbus-python-1.2.2 (publié 2016-02-22) dbus-python a
setup.py
, de sorte que le pip devrait être en mesure de l'installerOriginalL'auteur mata
Ma suggestion est d'installer le package de système pour le Python DBUS liaisons et puis créer la virtualenv avec le
--system-site-packages
option de ligne de commande pour permettre l'accès à l'échelle du système des paquets Python (y compris lesdbus
package) de l'activé virtualenv. Par exemple sur Debian/Ubuntu (ou une distribution dérivée):OriginalL'auteur Pedro Romano
Une autre solution est de simplement copier manuellement le
dbus
fichiers/bibliothèques directement à votre virtualenv:postmkvirtualenv
script.Bien que cette solution n'est pas exactement ce que je caractérise comme parfaitement propre, je l'aime pour la simplicité. Upvoting. 🙂
OriginalL'auteur Tisho
L'OP semble avoir ouvert une billet sur freedesktop.org pour ce, qui reste ouvert; il est cependant patch attaché à ce billet qui pourraient être appliquées à la plupart n'importe quelle version de python-dbus et puis reconditionné comme une archive.
Peut confirmer qu'il fonctionne correctement pour
dbus-python==1.2.4
dans virtualenv. De la construire avec succès besoinssudo apt-get install libdbus-glib-1-dev libdbus-1-dev
Merci @TheMeaningfulEngineer, votre commentaire a répondu à cette question pour moi.
OriginalL'auteur Alex Dupuy
@TheMeaningfulEngineer merci beaucoup, j'ai quelques problème pour installer dbus par pip et c'était ce dont j'avais besoin, je l'espère, vous avez une bonne journée où que vous soyez 😉
pour vérifier si il est en local -
sudo apt list --installed | grep pakage-name
sudo apt-get install libdbus-glib-1-dev libdbus-1-dev
et après cette ligne je l'ai fait installer
dbus
etnetworkmanager
sans erreursc'est exactement ce que j'ai fait, et avant que j'ai vérifié tous mes dbus version et networkmanager après faire ce que @TheMeaningfulEngineer dit, c'est de travailler, si je fais quelque chose de mal dans ce commentaire, essayez de explaind-moi de quoi , ni pourquoi, et désolé pour mon anglais.
OriginalL'auteur DANIEL URBANO DE LA RUA