Votre question date déjà de trois ans et certains détails ne sont pas abordés dans les autres réponses :
La plupart des gens que je connais utilisent HomeBrew o MacPorts Je préfère MacPorts en raison de sa coupe nette de ce qui est un environnement Mac OS X par défaut et de ma configuration de développement. Déplacez simplement votre /opt et testez vos paquets avec un environnement Python d'utilisateur normal.
MacPorts n'est portable que sur Mac, mais avec easy_install ou pip vous apprendrez à configurer votre environnement sur n'importe quelle plateforme (Win/Mac/Linux/Bsd...). De plus, il sera toujours plus à jour et avec plus de paquets.
Personnellement, je laisse MacPorts gérer mes modules Python pour que tout soit à jour. Comme n'importe quel autre gestionnaire de paquets de haut niveau (ex : apt-get), il est bien meilleur pour les gros travaux de modules avec beaucoup de dépendances binaires. Il n'y a aucune chance que je construise mes liaisons Qt (PySide) avec easy_install ou pip. Qt est énorme et prend beaucoup de temps à compiler. Dès que vous voulez un paquet Python qui a besoin d'une bibliothèque utilisée par des programmes non Python, essayez d'éviter easy_install ou pip.
À un moment donné, vous constaterez qu'il manque certains paquets dans MacPorts. Je ne pense pas que MacPorts vous donnera un jour l'ensemble des paquets de la CheeseShop . Par exemple, j'ai récemment eu besoin de la Élixir mais MacPorts ne propose que py25-elixir et py26-elixir, pas de version py27. Dans des cas comme celui-ci, vous avez :
pip-2.7 install --user elixir
( assurez-vous de toujours taper pip-(version) )
Cela va créer une bibliothèque Python supplémentaire dans votre répertoire personnel. Oui, Python fonctionnera avec plus d'un emplacement de bibliothèque : un contrôlé par MacPorts et un local utilisateur pour tout ce qui manque dans MacPorts.
Maintenant, remarquez que je préfère pip à easy_install. Il y a une bonne raison pour laquelle vous devriez éviter setuptools et easy_install. Voici une bonne explication et j'essaie de m'en éloigner. Une fonctionnalité très utile de pip est de vous donner une liste de tous les modules (avec leurs versions) que vous avez installés avec MacPorts, easy_install et pip lui-même :
gel de pip-2.7
Si vous avez déjà commencé à utiliser easy_install, ne vous inquiétez pas, pip peut reconnaître tout ce qui a déjà été fait par easy_install et même mettre à jour les paquets installés avec lui.
Si vous êtes un développeur, gardez un œil sur virtualenv pour contrôler différentes configurations et combinaisons de versions de modules. D'autres réponses le mentionnent déjà, ce qui n'est pas mentionné jusqu'à présent, c'est le Tox un outil permettant de vérifier que votre paquet s'installe correctement avec différentes versions de Python.
Bien que je n'aie généralement pas de conflits de versions, j'aime avoir virtualenv pour mettre en place un environnement propre et avoir une vue claire des dépendances de mes paquets. De cette façon, je n'oublie jamais aucune dépendance dans mon setup.py.
Si vous optez pour MacPorts, sachez que les versions multiples d'un même paquet ne sont plus sélectionnées comme dans l'ancien style Debian avec un paquet python_select supplémentaire (il est toujours là pour la compatibilité). Vous disposez maintenant de la commande select pour choisir la version de Python qui sera utilisée (vous pouvez même sélectionner les versions installées par Apple) :
$ port select python
Available versions for python:
none
python25-apple
python26-apple
python27 (active)
python27-apple
python32
$ port select python python32
Ajoutez-y la tox et vos programmes devraient être vraiment portables.
0 votes
Il y a quelques temps, Ars Technica a publié un article intéressant sur l'empaquetage d'applications PyQt pour Mac OS X : arstechnica.com/open-source/guides/2009/03/
7 votes
MacPorts est parfait pour Python sur le Mac. NOTE : vous devez installer les paquets Python via MacPorts pour qu'ils soient installés dans votre installation Python de MacPorts. Vous pouvez également installer des paquets sans utiliser MacPorts ; cependant, vous devez faire de cette version de python la version par défaut via python_select AVANT d'installer le paquet. Si vous installez le paquet et que vous utilisez ensuite python_select, cela ne fera aucune différence, car il sera installé dans la version de Python qui était la version par défaut au moment de l'installation.