Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 创建和安装自定义本地Anaconda包时解析依赖项_Python_Anaconda_Conda - Fatal编程技术网

Python 创建和安装自定义本地Anaconda包时解析依赖项

Python 创建和安装自定义本地Anaconda包时解析依赖项,python,anaconda,conda,Python,Anaconda,Conda,我正在Windows上开发一个python包,并希望将其安装到Linux机器上 我在本地创建了一个Anaconda软件包来移植该软件包,但我发现从本地软件包安装不会安装任何软件包的依赖项,例如pandas,这甚至可能不可能(请参阅) 注 直接从文件安装程序包无法解决此问题 依赖关系。如果您安装的软件包不工作,则可能已安装 缺少需要手动解决的依赖项 但制作Anaconda包的主要优点之一不是帮助解决依赖关系吗?否则我怎么办?我应该吗 创建requirements.txt文件,在我的setup.py

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

我在本地创建了一个Anaconda软件包来移植该软件包,但我发现从本地软件包安装不会安装任何软件包的依赖项,例如pandas,这甚至可能不可能(请参阅)

直接从文件安装程序包无法解决此问题 依赖关系。如果您安装的软件包不工作,则可能已安装 缺少需要手动解决的依赖项

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

  • 创建requirements.txt文件,在我的setup.py脚本中为setup()提供install_requires参数,然后只使用python setup.py安装
  • 通过
    conda env export-n my_conda_env-f environment.yml导出windows计算机上的conda环境,并尝试通过
    conda env create-n conda env-f/path/to/environment.yml在linux上复制环境
  • 别的
  • 至于我是如何创建我的conda软件包的,我已经在下面介绍了这一点。我不确定依赖项是否应该在我的meta.yaml文件或其他地方的运行要求下运行

    我一直在通过

    conda build -c conda-forge -c anaconda .
    
    将其转换为linux

    conda convert --platform linux-64 my_package-1.0-py37_0.tar.bz2 -o ./
    
    并通过

    conda install --use-local my_package-1.0-py37_0.tar.bz2
    
    我的setup.py文件和meta.yaml文件是

    setup.py

    from setuptools import setup
    
    setup(
        name='my_package',
        version='1.0',
        packages=['tests', 'utils', 'dataprocessing'],
        url='',
        license='',
        author='me',
        author_email='',
        description=''
    )
    
    meta.yaml

    {% 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: