安装水蟒包的特定 BUILD

有没有办法在阿纳康达安装一个特定的 build + 版本的软件包?Stack Overflow 后面的“ Anaconda/conda-安装特定的软件包版本”展示了如何安装该软件包的特定 版本。但是看看下面——有几个带有“ py27”前缀的4.2.1版本的枕头软件包。

背景: 我正在绞尽脑汁思考“ conda 搜索”输出的含义。例如,在我的安装中,conda search pillow给出:

pillow                       2.1.0                    py26_0  defaults
...
*  3.3.1                    py27_0  defaults
3.3.1                    py34_0  defaults
3.3.1                    py35_0  defaults
....
4.2.1                    py27_0  defaults
4.2.1                    py35_0  defaults
4.2.1                    py36_0  defaults
4.2.1            py27h7cd2321_0  defaults
4.2.1            py35h03abc04_0  defaults
4.2.1            py36h9119f52_0  defaults
4.3.0            py35h550890c_1  defaults
4.3.0            py27h353bd0c_1  defaults
4.3.0            py36h6f462bf_1  defaults

我理解2.1.0、3.3.1等等版本号的含义。但是 py27_0defaults是什么意思呢?更令人难以置信的是,像 py27h7cd2321_0那样的十六进制数字出现了。在进一步调查之后:

Https://www.anaconda.com/blog/developer-blog/package-better-conda-build-3/

告诉我这是一种编码特定构建包的新方法。

所以回到我的问题: 假设我仍然在 Python 2.7的蟒蛇行上,那么当我们做 conda install时,我们如何选择 py27_0构建而不是另一个(py27h7cd2321_0) ?

31386 次浏览

使用 py27_0的列就是用来构建/版本 python 的。带有 defaults的列是为了指示它属于哪个水蟒频道。不同的用户或组织可以有自己的频道,但默认的频道是 defaults和另一个流行的频道是 conda-forge

根据该信息安装任何特定版本的方法是:

conda install pillow=4.2.1=py27h7cd2321_0

它的格式是

conda install <package_name>=<version>=<build_string>

如果要选择哪个频道(否则默认选择 defaults) :

conda install -c <channel> <package_name>=<version>=<build_string>