标签: conda-build

如何通过 conda-build 配方安装 pip 包?

我正在尝试从数据管道中制作一个 conda 包。我们的想法是通过我们的部门在本地分发软件包以进行快速部署。

我们的管道使用了常见 conda 通道中不适用于 Windows 的 2 个软件包:SimpleITK 和 scitools3。在使用所有其他 conda 包依赖项创建 conda 环境后,我们通常会通过 pip 安装这两个包。

我制作了以下 conda 包配方meta.yaml

{% set name = "package_name" %}
{% set version = "1.0.0" %}

package:
  name: "{{ name|lower }}"
  version: "{{ version }}"

source:
  path: ..

build:
  number: 0
  script: "{{ PYTHON }} -m pip install . --no-deps --ignore-installed -vvv"
  entry_points:
    - cmr = package_name.api.cli.command_line_interface_segmentation:main
    - cupdate = package_name.api.cli.continuous_update:parse_and_run

requirements:
  host:
    - python
    - pip
  run:
    - python=3.7.4
    - …
Run Code Online (Sandbox Code Playgroud)

python pip anaconda conda conda-build

10
推荐指数
1
解决办法
5278
查看次数

conda构建后如何获取conda包的路径

我正在尝试在 makefile 中自动化 conda 构建过程。我使用以下命令构建 conda 包。

conda build . --output-folder dist/conda
Run Code Online (Sandbox Code Playgroud)

foo-1.0.0-0.tar.bz2在 下创建一个文件dist/conda/linux-64。接下来,我想对该文件做一些额外的事情。但我不知道确切的路径,因为包名称、版本、内部版本号和平台可能会改变。

如何在 Makefile 中实现这一目标?我尝试过在 conda 构建期间创建的一些环境变量,但似乎它们仅在构建期间可用。

conda conda-build

8
推荐指数
1
解决办法
438
查看次数

Conda 使用 pint 构建无法满足的依赖项错误

我有一个有效的 pip 包,我试图将它放到 Anaconda.org 服务器上。我使用 conda 框架创建了 meta.yaml 文件,其中包含对 pint 的要求(未选择特定版本,因此它应该默认为最新版本。)但是,当我尝试使用 conda build 构建包时,conda 会引发此错误: raise DependencyNeedsBuildingError(exc, subdir=subdir) conda_build.exceptions.DependencyNeedsBuildingError: Unsatisfiable dependencies for platform osx-64: ['pint'] 但是,有一个为 osx-64 构建的品脱......在 conda 和 pip 以及我的机器上 - 这是我用来运行我的 pip 包的那个。conda 正在寻找哪个存储库以找到该要求,以及如何指定要在 meta.yaml 中使用的正确品脱?

python macos anaconda conda conda-build

7
推荐指数
1
解决办法
2511
查看次数

使用 manylinux + auditwheel 打包 pip 轮子 vs. Conda

描述

所以我希望打包一个需要科学库的相当复杂的 python 应用程序。这个问题有点类似于stackoverflow pip vs conda 的讨论,但它没有详细介绍自 2016 年以来 linux 轮子的二进制打包可用的差异。 我已经看到pypi/cryptography使用 manylinux 并通过 pypi 轮子分发二进制文件。另一个包 mpi4py 只发布 conda 的二进制包,只是因为困难。甚至可以说二元轮不适合这项任务。

通过轮子共享库打包与 conda 相比是什么样的?截至 2018 年,通过轮子共享库打包是否值得?

要求

我的包裹需要

  • 开放式
  • fftw3
  • openmpi

我的所有静态二进制文件大约为 100Mb,因此它确实需要很多共享库。许多我还指出,即使对我自己来说,安装也是一种巨大的痛苦......我无法想象尝试自己安装它的人会是什么样子。到目前为止,我有一个可用的 docker 容器。

python conda python-wheel python-manylinux conda-build

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

配置conda构建以从conda包输出中排除某些文件夹

tl; dr:

如何排除打包文件夹conda build

语境

我正在使用构建第一个软件包conda build

我的meta.yaml文件如下所示:

package:
    name: 'some_name'
    version: {{ load_setup_py_data().get('version') }}

source:
    path: ./

build:
    script: python setup.py install --single-version-externally-managed --record=record.txt

requirements:
    run:
        - python >=3.6
        - pandas >=0.2
        - numpy >=1.12
        # Packages that must be installed
        # in the user's conda environment
        # to run this package.

    build:
        # Packages used by setup.py
        # to install this package.
        # May also install compilers
        # for non-python code.
        - python
        - …
Run Code Online (Sandbox Code Playgroud)

python python-module anaconda conda conda-build

7
推荐指数
1
解决办法
380
查看次数

如何修复构建与“图标”文件相关的 conda 包时的错误?

老实说,我无法弄清楚这个错误发生了什么。我以为这是我的清单文件中的内容,但显然不是。

\n

请注意,此目录位于我的 Google 云端硬盘中。

\n

这是我的MANIFEST.in文件:

\n
graft soothsayer_utils\ninclude setup.py\ninclude LICENSE.txt\ninclude README.md\nglobal-exclude Icon*\nglobal-exclude *.py[co]\nglobal-exclude .DS_Store\n
Run Code Online (Sandbox Code Playgroud)\n

我在目录中运行conda build .并收到以下错误:

\n
Packaging soothsayer_utils\nINFO:conda_build.build:Packaging soothsayer_utils\nINFO conda_build.build:build(2214): Packaging soothsayer_utils\nPackaging soothsayer_utils-2022.01.19-py_0\nINFO:conda_build.build:Packaging soothsayer_utils-2022.01.19-py_0\nINFO conda_build.build:bundle_conda(1454): Packaging soothsayer_utils-2022.01.19-py_0\nnumber of files: 11\nFixing permissions\nPackaged license file/s.\nINFO :: Time taken to mark (prefix)\n        0 replacements in 0 files was 0.11 seconds\n\'site-packages/soothsayer_utils-2022.1.19.dist-info/Icon\' not in tarball\n\'site-packages/soothsayer_utils-2022.1.19.dist-info/Icon\\r\' not in info/files\nTraceback (most recent call last):\n  File "/Users/jespinoz/anaconda3/bin/conda-build", line 11, in <module>\n    sys.exit(main())\n  File "/Users/jespinoz/anaconda3/lib/python3.8/site-packages/conda_build/cli/main_build.py", line 474, in main\n    execute(sys.argv[1:])\n …
Run Code Online (Sandbox Code Playgroud)

python package google-drive-api conda conda-build

6
推荐指数
1
解决办法
447
查看次数

如何在 conda-forge(甚至我个人的 conda 频道)上提供使用 Poetry 开发的 Python 包?

我使用 Poetry 作为依赖管理和打包工具开发了我的第一个 Python 包。

将我的工作发布到 PyPI 就像运行一样简单:

poetry publish --build
Run Code Online (Sandbox Code Playgroud)

现在,我想让我的包也可以在 conda 生态系统中使用。作为初步步骤,我尝试使用conda build.

这就是我的(匿名)meta.yaml文件的样子:

{% set version = "0.1.4" %}

package:
  name: "<my-package-name>"
  version: {{ version }}

source:
  url: <URL-of-the-source-distribution-of-my-package-on-PyPI>.tar.gz
  sha256: <SHA256-of-the-source-distribution-of-my-package-on-PyPI>

build:
  noarch: python
  script: python -m pip install .

requirements:
  host:
    - python
    - pip
  run:
    - python

about:
  license: MIT
  license_familY: MIT
  license_file: LICENSE
  summary: "<Brief-project-description>"
Run Code Online (Sandbox Code Playgroud)

运行时conda build,出现以下异常:

ModuleNotFoundError: No module named 'poetry'
Run Code Online (Sandbox Code Playgroud)

紧接在这些行之后:

[...]
Processing $SRC_DIR
    Preparing wheel …
Run Code Online (Sandbox Code Playgroud)

python pypi conda-build python-poetry conda-forge

6
推荐指数
1
解决办法
2016
查看次数

在开发模式下安装 conda 包是什么意思?

我正在查看 Conda 的文档,我发现了这个:https://docs.conda.io/projects/conda-build/en/latest/resources/commands/conda-develop.html?highlight=develop

它解释了如何在开发模式下安装包,但它似乎没有解释这实际上意味着什么以及它与正常安装有何不同。

conda conda-build

5
推荐指数
1
解决办法
1502
查看次数

如何使 conda-build 正常工作并找到 setup.py?

我正在尝试创建一个 anaconda python 包。我的meta.yaml看起来像这样:

package:
  name: liveprint-lib
  version: "0.1.0"

build:
  number: 0

requirements:
  build:
    - pip
    - python=3.7
    - setuptools
  run:
    - python=3.7
    - numpy
    - opencv

about:
  home: https://github.com/monomonedula/liveprint
  license: Apache License 2.0
  license_file: LICENSE.txt
  summary: Python utility library for dynamic animations projections
Run Code Online (Sandbox Code Playgroud)

build.sh

$PYTHON setup.py install
Run Code Online (Sandbox Code Playgroud)

文件夹结构:

.
??? bld.bat
??? build.sh
??? LICENSE.txt
??? liveprint
??? meta.yaml
??? README.md
??? resources
??? setup.py
??? test
Run Code Online (Sandbox Code Playgroud)

我运行时得到的错误conda build .如下:

/home/vhhl/programs/anaconda3/conda-bld/liveprint-lib_1581422598848/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_/bin/python: can't open file …
Run Code Online (Sandbox Code Playgroud)

python anaconda conda conda-build

5
推荐指数
1
解决办法
889
查看次数

如何修复自定义 conda 包的 conda UnsatisfiableError?

我正在尝试打包我的 python 代码以在 Anaconda 云上发布。文件夹结构如下所示:

.
??? conda-recipe
?   ??? build.bat
?   ??? build.sh
?   ??? meta.yaml
??? demos
?   ??? datasets
?   ?   ??? com-amazon.all.dedup.cmty.txt
?   ?   ??? com-amazon.ungraph.txt
?   ?   ??? email-Eu-core-department-labels.txt
?   ?   ??? email-Eu-core.txt
?   ??? directed_example.ipynb
?   ??? email_eu_core_network_evaluation-Copy1.ipynb
?   ??? node_classification.ipynb
?   ??? zacharys_karate_club_evaluation.ipynb
??? LICENSE.txt
??? README.md
??? setup.py
??? sten
?   ??? embedding.py
?   ??? __init__.py
??? test
?   ??? __init__.py
?   ??? test_system.py
??? zachary_computed.png
??? zachary_expected.png

Run Code Online (Sandbox Code Playgroud)

meta.yaml文件:

. …
Run Code Online (Sandbox Code Playgroud)

python python-3.x anaconda conda conda-build

5
推荐指数
0
解决办法
186
查看次数