You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS更新后Samtools报libcrypto.1.0.0.dylib缺失问题咨询

问题现象

Apple Silicon M1芯片Mac升级到macOS Monterey 12.4后,Conda环境安装的Samtools启动报错:

dyld[29136]: Library not loaded: @rpath/libcrypto.1.0.0.dylib
  Referenced from: /Users/atnik/opt/anaconda3/bin/samtools
  Reason: tried: '/Users/atnik/opt/anaconda3/bin/../lib/libcrypto.1.0.0.dylib' (no such file), '/Users/atnik/opt/anaconda3/bin/../lib/libcrypto.1.0.0.dylib' (no such file), '/usr/local/lib/libcrypto.1.0.0.dylib' (no such file), '/usr/lib/libcrypto.1.0.0.dylib' (no such file)
zsh: abort      samtools

本地库目录仅存在libcrypto.1.1.dylib,无1.0.0版本库文件,重装Anaconda、重装/升级Samtools均无法解决问题,当前默认安装版本为samtools-1.4.1-0,升级1.9、1.11版本失败。

根因说明
  • 旧版Samtools依赖OpenSSL 1.0版本动态库,macOS Monterey已经在系统路径中移除了这个老旧版本的库文件
  • Conda默认源的Samtools包没有做Apple Silicon arm64架构适配,实际拉取的是x86架构打包的版本,它依赖的libcrypto.1.0.0.dylib在arm64架构的conda源中没有对应安装包,所以不管是重装Anaconda还是重装、升级Samtools,都拉不到匹配的依赖,持续报找不到文件的错误。
解决方法

优先选择第一种方案,稳定性最高。

  • 方案1:通过conda-forge源安装适配arm64架构的Samtools
    conda-forge源已经完成Apple Silicon全系列、Monterey系统的适配,会自动匹配对应版本的OpenSSL依赖,不会出现动态链接错误。

    • 清理当前环境中残留的冲突包:
      conda remove -y samtools openssl
    • 指定conda-forge源安装最新稳定版Samtools:
      conda install -y -c conda-forge samtools
    • 安装完成后执行samtools --version验证,正常输出版本信息即修复完成。
  • 方案2:新建纯净arm64专属环境(适合旧环境混装x86包导致依赖混乱的场景)
    如果旧环境之前装过Rosetta转译的x86包,会出现架构冲突,直接新建纯净环境即可:

# 指定架构为osx-arm64新建环境,直接从conda-forge安装samtools
CONDA_SUBDIR=osx-arm64 conda create -n seqenv -y -c conda-forge samtools
# 激活环境
conda activate seqenv
# 验证功能
samtools --version
  • 方案3:软链接兼容(仅适合必须使用1.4.x等老旧版本Samtools的临时场景,不推荐长期使用)
    通过软链接将现有高版本libcrypto映射为程序需要的1.0.0版本,注意替换路径为自己本地的conda安装路径:
    ln -s /Users/atnik/opt/anaconda3/lib/libcrypto.1.1.dylib /Users/atnik/opt/anaconda3/lib/libcrypto.1.0.0.dylib

注意:该方法属于版本兼容hack,部分依赖OpenSSL 1.0专属API的功能可能出现运行异常,仅作临时应急使用。

内容的提问来源于stack exchange,提问作者Atsathe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 18:18:37