conda channel的配置


转载请在文章起始处注明出处,谢谢。

文章转自知乎,仅供方便自学查看。


默认的conda channel是defaults,但这个channel的代码包不全。我的建议使用conda-forge channel,并设置严格优先使用conda-forge,因为这不同channel的包不完全兼容。我之前通过conda-forge channel安装geopandas时候,由于没有设置严格优先使用conda-forge,conda使用了defaults channel安装了libgdal(这是geopandas的依赖包之一),导致geopandas的安装一直不成功。

conda-forge的优势是什么?这个channel有强大的社区支持,提供了大多数安装包,并且更新及时。网址是:

Table of Contentsconda-forge.org

如何添加conda-forge channel并设置优先级?

  1. 创建.condarc文件。这是conda channel的配置文件,在安装conda之后并不会生成这个文件。在terminal中使用conda config指令可以创建该文件
conda config

2. 查看现在的channel状态和优先级

conda config --get channels

3. 添加conda-forge channel并设置为最高优先级

conda config --add channels conda-forge

4. 再次查看channel状态和优先级

conda config --get channels
# it should be the following:
# --add channels 'defaults'   # lowest priority
# --add channels 'conda-forge'   # highest priority

5. 激活某个环境,在环境中设置channel的严格优先。注,如果该环境中已经安装了若干库,则需要先更新所有的库以保证大多数库从conda-forge下载,以保持库的一致性。

# activate my environment
conda activate my_env
# update all packages if needed
conda update --all
# set channel priority as strict
conda config --set channel_priority strict

如果在执行set channel_priority strict之后,conda提示某些库不一致(inconsistencies),则需要撤销strict,重新执行update --all,再设置channel priority strict。

6. 如何查看.condarc文件的位置和内容?

conda info

执行conda info,会看到某一行显示user config files,这是.condarc的文件路径。

你可能感兴趣的:(conda channel的配置)