con*_*geq 7 python anaconda conda
我正在 Windows 上开发一个 python 包,并希望将其安装在 Linux 计算机上。
我在本地创建了一个 Anaconda 包来移植该包,但我发现从本地包安装不会安装该包的任何依赖项,例如 pandas,而且这甚至可能不可能(请参阅https://docs .anaconda.com/anaconda/user-guide/tasks/install-packages/)
笔记
直接从文件安装包并不能解决依赖关系。如果您安装的软件包无法运行,则可能缺少需要手动解决的依赖项。
但是制作 Anaconda 包的主要优点之一不就是帮助解决依赖关系吗?否则我该怎么办呢?我是不是该
conda env export -n my_conda_env -f environment.yml,并尝试通过以下方式在 linux 上复制环境conda env create -n conda-env -f /path/to/environment.yml至于我如何创建 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 setup
setup(
name='my_package',
version='1.0',
packages=['tests', 'utils', 'dataprocessing'],
url='',
license='',
author='me',
author_email='',
description=''
)
Run Code Online (Sandbox Code Playgroud)
元数据文件
{% set name = "my_package" %}
{% set version = "1.0" %}
package:
name: "{{ name|lower }}"
version: "{{ version }}"
source:
path: ..\
requirements:
host:
- pip
- python
run:
- python
- pandas
- fbprophet
- matplotlib
- numpy
- plotly
- PyYAML
- cx_Oracle
about:
home:
Run Code Online (Sandbox Code Playgroud)