Conda-forge 包构建失败:需要 CC,但即使添加了编译器也找不到

Conda-forge package build fails with: CC required but not found even though compiler is added

我想为 https://github.com/uber/h3-py 创建一个 conda-forge 包 并遵循 https://conda-forge.org/docs/maintainer/adding_pkgs.html#staging-test-locally.

的说明

食谱可以在这里找到:https://github.com/geoHeil/staged-recipes/blob/h3-py/recipes/h3/meta.yaml

尝试使用以下方式执行本地构建时:

/.circleci/run_docker_build.sh

它失败了:

echo 'cc required but not found.'

meta.yml 的重要部分如下所示:

requirements:
  build:
    # If your project compiles code (such as a C extension) then add the required compilers as separate entries here.
    # Compilers are named 'c', 'cxx' and 'fortran'.
    - {{ compiler('c') }}
    - {{ compiler('cxx') }}
    - cmake
    - make
  host:
    - python
    - pip
  run:
    - python

我怎样才能将它提交给 conda-forge?

cc 是对编译器的一般引用,如何在不分叉源存储库的情况下将这样的 reference/symlink 添加到 conda 提供的 c、c++ 编译器(大概是 cxx/gcc) /和他们的安装脚本?

不应该

- {{ compiler('c') }}
- {{ compiler('cxx') }}

添加这个?

错误是由https://github.com/uber/h3-py/blob/master/.install.sh#L25

引起的
command -v cc >/dev/null 2>&1 || { echo "cc required but not found."; exit 1; }

我必须创建自定义 build.sh 文件:

cmake 不依赖某些 $CC,而是自动使用正确的环境。 https://github.com/conda-forge/staged-recipes/pull/8467/files