J'ai suivi la réponse de @Viktor Kerkez et j'ai eu un succès mitigé. J'ai constaté que parfois cette recette de
conda skeleton pypi PACKAGE
conda build PACKAGE
Il semblerait que tout ait fonctionné mais je n'ai pas réussi à importer PACKAGE. Récemment, j'ai posé une question à ce sujet sur le forum Groupe d'utilisateurs d'Anaconda et entendu @Travis Oliphant lui-même sur la meilleure façon d'utiliser Conda pour construire et gérer les paquets qui ne sont pas livrés avec Anaconda. Vous pouvez lire ce fil de discussion ici mais je vais décrire l'approche ci-dessous pour espérer que les réponses à la question du PO soient plus complètes...
Exemple : Je vais installer l'excellent paquet prettyplotlib sur Windows en utilisant conda 2.2.5.
1a) conda build --build-recipe prettyplotlib
Vous verrez que les messages de construction semblent tous corrects jusqu'à la section finale TEST de la construction. J'ai vu cette erreur
Dossier " C:\Anaconda\conda -bld \test -tmp_dir \run_test.py ", ligne 23 import None SyntaxError : cannot assign to None TESTS FAILED : prettyplotlib-0.1.3-py27_0
1b) Allez dans /conda-recipes/prettyplotlib et éditez le fichier meta.yaml. Actuellement, les paquets configurés comme à l'étape 1a donnent des fichiers yaml qui ont une erreur dans le champ test
section. Par exemple, voici ce que j'ai cherché prettyplotlib
test: # Python imports imports:
-
- prettyplotlib
- prettyplotlib
Modifiez cette section pour enlever la ligne vide précédée par le - et aussi enlever la ligne redondante prettyplotlib. Au moment où j'écris ces lignes, j'ai constaté que je dois modifier la plupart des fichiers meta.yaml comme celui-ci pour les paquets externes que j'installe avec conda, ce qui signifie qu'il y a une ligne d'importation vide qui cause l'erreur ainsi qu'une importation redondante du paquetage donné.
1c) Relancez la commande à partir de 1a, qui devrait se terminer sans erreur cette fois-ci. A la fin de la construction, il vous sera demandé si vous voulez télécharger la construction sur binstar . J'ai entré Non et j'ai vu ce message :
Si vous voulez télécharger ce paquet sur binstar.org plus tard, tapez :
$ binstar upload C:\Anaconda\conda -bld \win -64 \prettyplotlib -0.1.3-py27_0.tar.bz2
Ce fichier tar.bz2 est le build que vous devez maintenant installer.
2) conda install C:\Anaconda\conda-bld\win-64\prettyplotlib-0.1.3-py27_0.tar.bz2
En suivant ces étapes, j'ai réussi à utiliser conda pour installer un certain nombre de paquets qui ne sont pas fournis avec Anaconda. Auparavant, j'avais installé certains d'entre eux en utilisant pip, donc j'ai fait pip uninstall PACKAGE
avant d'installer PACKAGE avec conda. En utilisant conda, je peux maintenant gérer (presque) tous mes paquets avec une seule approche plutôt que d'avoir un mélange de choses installées avec conda, pip, easy_install, et python setup.py install.
Pour le contexte, je pense que article récent du blog par @Travis Oliphant sera utile pour les personnes qui, comme moi, n'apprécient pas tout ce qui entre dans un packaging Python robuste, mais apprécient certainement quand les choses "fonctionnent tout simplement". conda semble être une grande voie à suivre...