小编con*_*geq的帖子

创建和安装自定义本地 Anaconda 包时解决依赖关系

我正在 Windows 上开发一个 python 包,并希望将其安装在 Linux 计算机上。

我在本地创建了一个 Anaconda 包来移植该包,但我发现从本地包安装不会安装该包的任何依赖项,例如 pandas,而且这甚至可能不可能(请参阅https://docs .anaconda.com/anaconda/user-guide/tasks/install-packages/

笔记

直接从文件安装包并不能解决依赖关系。如果您安装的软件包无法运行,则可能缺少需要手动解决的依赖项。

但是制作 Anaconda 包的主要优点之一不就是帮助解决依赖关系吗?否则我该怎么办呢?我是不是该

  1. 创建一个requirements.txt文件并在我的setup.py脚本中向setup()提供一个install_requires参数,然后使用python setup.py install
  2. 通过导出我的 Windows 计算机上的 conda 环境conda env export -n my_conda_env -f environment.yml,并尝试通过以下方式在 linux 上复制环境conda env create -n conda-env -f /path/to/environment.yml
  3. 别的东西

至于我如何创建 conda 包,我已将其包含在下面。我不确定依赖项是否应该符合我的 meta.yaml 文件或其他地方的运行要求

我一直在通过构建包

conda build -c conda-forge -c anaconda .
Run Code Online (Sandbox Code Playgroud)

将其转换为linux

conda convert --platform linux-64 my_package-1.0-py37_0.tar.bz2 -o ./
Run Code Online (Sandbox Code Playgroud)

并通过安装它

conda install --use-local my_package-1.0-py37_0.tar.bz2
Run Code Online (Sandbox Code Playgroud)

我的 setup.py 文件和 meta.yaml 文件是

安装程序.py

from setuptools import …
Run Code Online (Sandbox Code Playgroud)

python anaconda conda

7
推荐指数
0
解决办法
699
查看次数

标签 统计

anaconda ×1

conda ×1

python ×1