【发布时间】:2016-02-14 08:07:12
【问题描述】:
如何将包添加到现有的 conda 环境中?
如果是python包我可以使用pip install <package>,但是如果pip不起作用怎么办?
激活环境并使用conda install <package>是否足够?
【问题讨论】:
-
如果
conda install和pip install都不起作用怎么办?
如何将包添加到现有的 conda 环境中?
如果是python包我可以使用pip install <package>,但是如果pip不起作用怎么办?
激活环境并使用conda install <package>是否足够?
【问题讨论】:
conda install 和pip install 都不起作用怎么办?
您已经回答了自己的问题。事实上,如果可以的话,你真的很想做conda install ... 而不是使用 pip。
您也可以在不激活环境的情况下安装 conda 包。只需使用conda install -n <env_name> <package> 或conda install -p <path/to/env> <package>。
【讨论】:
conda-forge? (例如conda install -c conda-forge pyarrow)
conda-forge 只是在 Anaconda 上指定安装程序应在其中查找包的通道。只要你想要的包在主/默认频道中(即当你运行 conda install 时搜索的那个没有-c 标志),我看不出有任何理由使用conda-forge
如果要在特定的 conda 环境中安装特定的包,可以使用以下命令。
先激活conda环境再做:
$ conda install --name <conda_env_name> -c <channel_name> <package_name>
举个具体的例子,假设你想将chainer从频道 anaconda安装到已经创建的名为chainerenv的conda环境中,那么你可以这样做:
$ conda install --name chainerenv -c anaconda chainer
【讨论】:
--name <env_name> 标志来命名环境,为什么还需要激活 conda 环境?
-n 来指定环境,因为我们已经在环境中了。
有另一种方法可以做到这一点,我刚刚在我自己的 mac 上进行了测试:
示例:我想在我的 python2.7 环境中安装一个非 conda 包:
去终端
通过以下方式激活所需的环境:source activate py27
成功激活环境后,可以通过pip install package安装你想要的包
【讨论】:
答案是肯定的(通常)。
一个例子是您可以激活您的 conda 环境,然后直接对来自/conda_envs/.pkgs 的现有 tar.bz2 文件执行conda install pandas.tar.bz2(来自其他环境的剩余文件)
如果你没有这样的 tarball 包,但你有带有 setup.py 的 src,你可以通过 python setup.py install (或 python setup.py develop 链接 src)进行常规安装
【讨论】: