我已使用
导出了当前活动的环境conda env export > environment.yml
这非常方便,因为它跟踪conda和pip安装的包。但是,我有一些软件包(例如,整体和底图)由来自Christoph Gohlke的Windows编译软件包的.whl文件中的pip本地安装。当我尝试通过
重建我的环境时conda env create -f environment.yml
pip返回错误,因为它无法在索引中找到这些包(显然)。有没有办法在conda导出步骤中告诉pip在哪里查找这些本地包?可以假定.whl文件与environment.yml文件位于同一目录中。
答案 0 :(得分:10)
实际上没有办法让它根据我的意识自动创建.whl
文件的条目。
实现此功能的最简单方法是手动更改environment.yml
文件,并在.whl
下的列表中添加- pip:
文件。我通过下载.whl
的{{1}}包并将其放在与我的nose
文件相同的目录中来尝试此操作,结构如下所示:
env.yml
如果它位于不同的目录中,则只提供该目录。当然,在发布name: python3_test
dependencies:
- openssl=1.0.2h=1
- pip=8.1.2=py35_0
- python=3.5.1=5
- readline=6.2=2
- setuptools=23.0.0=py35_0
- sqlite=3.13.0=0
- tk=8.5.18=0
- wheel=0.29.0=py35_0
- xz=5.2.2=0
- zlib=1.2.8=3
- pip:
- nose-1.3.7-py3-none-any.whl
时,该路径应该有效。
运行conda create env
时发出的pip
命令是pretty straightforward install,因此从命令行使用pip进行安装的语义应该类似。哎呀,您甚至可以在conda env create -n <name> -f <file.yml>
中为url
文件添加.whl
,安装仍然会顺利进行。再次,保持其余部分相同并使用网址下载requirements.yml
:
nose
使用任何网址不应导致任何问题。
答案 1 :(得分:1)
这是一个environment.yml的一个具体示例,它使用URL链接到Christoph Gohlke为Windows编译的包中的wheel文件:
# run: conda env create --file environment.yml
name: test-env
dependencies:
- python>=3.5
- anaconda
- pip
- pip:
- http://www.lfd.uci.edu/~gohlke/pythonlibs/bofhrmxk/opencv_python-3.1.0-cp35-none-win_amd64.whl