2013-05-14 1 views
2

Supposons que j'ai un projet qui dépend de packages qui doivent uniquement être installés via le gestionnaire de packages système (par exemple, des liaisons à des bibliothèques C), de sorte que install_requires ne fonctionne pas.Emballage Python correct avec dépendances de packages externes

Actuellement, j'essaie d'importer les paquets en setup.py et d'appeler le sys.exit() avec un code de sortie positif si l'importation échoue. Est-ce une bonne pratique ou existe-t-il de meilleurs moyens d'y parvenir?

Répondre

0

Vous pouvez créer des packages de système natifs (deb, rpm, etc.) et décrire les dépendances (ce qui sont les bibliothèques C dans votre cas). Vous pouvez vérifier le Debian packages packing manual (ou les paquets pour un autre gestionnaire, selon le système que vous utilisez).

+0

Les dépendances _ sont installables via 'apt',' yum' etc. Mais je dois trouver un moyen de spécifier ces dépendances dans mon 'setup.py'. Ou simplement échouer gracieusement si elles ne sont pas installées. – matthias

+0

Oui, si les dépendances sont installées de cette manière, vous devriez probablement créer des versions apt et yum pour votre paquet. –

+0

Je pensais à cela et je suis arrivé à la conclusion que c'est une solution techniquement correcte mais qui nécessite beaucoup d'efforts de ma part. Cela est particulièrement vrai pour les projets très petits et «pas si importants». – matthias

Questions connexes