使用 conda,我似乎无法在 MacOS Mojave 上构建 gcc-5(或任何 gcc-X 版本)配方:
系统前置要求
- 安装 Xcode
- 命令行工具
- 安装头文件包(/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg)
- 运行 Xcode,完成安装。
康达先决条件
- 安装 Conda,conda-build
- 获取 conda 食谱:
git clone git@github.com:conda/conda-recipes.git
做 Sysroot 的东西(按照 Anaconda 编译器构建的指示)
简而言之,这意味着:
- 下载 MacOSX10.9 SDK 并解压到 /opt/MacOSX10.9.sdk
- 构建 ~/.conda/conda_build_config.yaml
macos_min_version:
- 10.9
macos_machine:
- x86_64-apple-darwin13.4.0
MACOSX_DEPLOYMENT_TARGET:
- 10.9
CONDA_BUILD_SYSROOT: # [osx]
- /opt/MacOSX10.9.sdk # [osx]
- 指示 conda 使用上述配置文件 (~/.condarc):
conda_build:
config_file: ~/.conda/conda_build_config.yaml
尝试构建 gcc-5:
cd conda-recipes
conda build gcc-5 -c conda-forge
上述构建失败。指向 Xcode 中的原子标头。我的假设是,Xcode 10.2.x 是否太新而无法构建如此古老的 gcc 编译器?我也尝试构建自己的 conda gcc-9 配方,但因缺少图像而失败(未找到/加载 dylib)。所以我想我真正的问题是,人们如何使用 conda build 来构建 gcc-X?我可以自己手动构建 GCC 9.2.0。但我想知道如何使用conda build 正确地做到这一点。
Stackoverflow 家伙的注意事项:我认为应该在 SuperUser 上问这个问题,但没有标签“conda”。每个人似乎都在这里发布康达问题......