shapeit4环境问题报错解决

记录一次因为环境问题(C++ 库 boost 1.85)导致的 shapit4 报错的问题的解决过程。

问题

运行 shapeit4 报错

1
shapeit4: error while loading shared libraries: libboost_iostreams.so.1.85.0: cannot open shared object file: No such file or directory

AI 说是没有 boost 1.85

临时环境重装 boost

在临时环境 zhouziwen_test 安装 boost ,这样哪怕崩了也没有啥损失。在主环境里要是崩了,或者盲目升级或降级可能会导致其他依赖 boost 的软件无法使用。

1
2
3
4
5
# 激活你的环境
conda activate zhouziwen_test

# 安装指定版本的 Boost(Conda Forge 有 1.85.0)
conda install -c conda-forge boost=1.85.0

现在还没有下载成功。conda 解析环境失败,静默退出了。就没有下面的内容了。

1
2
3
4
5
$ conda create -n shapeit4 -c bioconda shapeit4=4.2.2 python=3.10
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful attempt using repodata from current_repodata.json, retrying with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: \

如果上一步成功了,然后查看有没有这个共享库

1
ls $CONDA_PREFIX/lib/libboost_iostreams.so*

如果有的话,将这个路径加到共享库路径中

1
2
3
4
module purge 
export LD_LIBRARY_PATH=~/miniconda3/envs/zhouziwen_test/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=~/miniconda3/envs/zhouziwen/lib:$LD_LIBRARY_PATH
conda activate zhouziwen

然后跑一下 shapeit4 看看

1
shapeit4

最终解决:重建一个shapeit的虚拟环境

直接创建一个虚拟环境 (Conda 的求解进程被系统“静默终止”了,只能用 mamba ,mamba 很快 )

1
mamba create -n shapeit4 -c conda-forge -c bioconda shapeit4=4.2.2

经验

用好 mamba

  1. conda 的 base 环境必须安装 mamba 。并且base 环境除了 condamamba 及其自身依赖外,不应安装任何其他软件包
  2. base 环境中严禁混用 conda 和 mamba 。在 base 环境中,只使用 conda 来安装或更新 mamba 本身
  3. 对于你通过 conda createmamba create 创建的所有其他环境(如 shapeit4),condamamba 的命令是完全等价且可互换的。可以混用,但是由于 mamba 更快,推荐统一使用 mamba 进行包的安装、更新和删除。

遇到环境问题怎么办

  1. 最好新建一个虚拟环境来解决,或者也可以尝试在一个临时环境解决。就是不要在自己的工作的主环境来弄,崩了重新来麻烦。
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2019-2026 Vincere Zhou
  • 访问人数: | 浏览次数:

请我喝杯茶吧~

支付宝
微信