Introduction
Les packages qui ne peuvent pas être installés avec conda sont généralement installés avec pip, mais il est possible (et devrait l'être) de créer et de gérer des packages avec conda.
** Cette méthode seule n'est pas bonne car il semble que les packages requis soient inclus à la fois dans pip et conda. ** ** ** Si quelqu'un connaît plus de détails, veuillez me le faire savoir. ** **
Construisez avec conda et installez les packages nécessaires pour télécharger sur anaconda.org avec conda.
conda install conda-build anaconda-client
Jusqu'à récemment, 64 bits Win avait un bogue, donc si vous utilisez Windows et avez déjà conda-build, vous devriez le mettre à jour. Mieux.
conda update conda-build
Par exemple, lors de la conversion de pandas_ml en conda, cela ressemble à ceci. Créez une recette de construction avec squelette, construisez localement et téléchargez sur anaconda.org si nécessaire.
mkdir work
cd work
conda skeleton pypi pandas_ml --version 0.3.0
cd pandas_ml
conda build . --python=3.4
# To have conda build upload to anaconda.org automatically, use
# $ conda config --set anaconda_upload yes
conda build . --output
#>>> <anaconda root>\conda-bld\win-64\pandas_ml-0.3.0-py34_0.tar.bz2
onda install --use-local pandas_ml
Inscrivez-vous à anaconda.org. C'est gratuit si vous n'utilisez pas privé.
anaconda login
#>>> Using Anaconda Cloud api site https://api.anaconda.org
#>>> Username: y__sama
#>>> Password:
#>>> login successful
#>>> y__sama's
anaconda upload <anaconda root>\conda-bld\win-64\pandas_ml-0.3.0-py34_0.tar.bz2
Si vous téléchargez souvent sur anaconda, définissez conda config --set anaconda_upload yes
.
Lors de l'installation depuis anaconda.org, vous pouvez spécifier le canal comme d'habitude et installer.
conda install -c y__sama pandas_ml
J'obtiens souvent des erreurs car les packages dépendants ne peuvent pas être installés avec conda ou ne sont pas répertoriés dans la recette (meta.yaml). Si une erreur se produit, il est nécessaire de créer un package dépendant séparé avec conda build ou de modifier meta.yaml tout en regardant le message.
http://conda.pydata.org/docs/build_tutorials/pkgs.html#troubleshooting
Copie d'environnement en local
conda create -n env_copy --clone env
Migrer vers un autre serveur (via fichier)
Si vous souhaitez le télécharger sur anaconda.org et l'utiliser, ajoutez un canal.
conda config --add channels y__sama
Exportez l'environnement dans un fichier une fois et spécifiez-le avec l'option --file lors de la création.
conda list -e > env.txt
conda create -n env_file --file env.txt
Mais pour une raison quelconque, pip et conda sont inclus. .. ..
conda list
#>>> ...Abréviation
#>>> jsonschema 2.5.1 py35_0 defaults
#>>> jupyter-client 4.2.2 <pip>
#>>> jupyter-cms 0.5.0 <pip>
#>>> jupyter-core 4.1.0 <pip>
#>>> jupyter_client 4.2.2 py35_0 defaults
#>>> jupyter_cms 0.5.0 py35_0 y__sama
#>>> jupyter_core 4.1.0 py35_0 defaults
#>>> libsodium 1.0.3 0 defaults
#>>> ...Abréviation
Vous devriez maintenant être capable de gérer des paquets avec uniquement la liste conda sans utiliser pip freeze et la liste conda ensemble.
Si vous avez des détails, je vous serais reconnaissant de bien vouloir commenter.
référence
https://gist.github.com/aphlysia/d5fcee79ff81b8272faf http://conda.pydata.org/docs/build_tutorials/pkgs.html http://docs.anaconda.org/cli.html