RedHat低版本glibc环境下如何本地重编译构建bsbolt conda模块
本地构建适配glibc 2.28的bsbolt conda包操作流程
- 前置依赖准备:先在当前使用的conda环境中安装构建工具,执行命令
conda install -c conda-forge conda-build,全程不需要升级系统自带的glibc 2.28,所有构建依赖均从conda渠道拉取兼容版本即可。 - 终端路径切换到你git clone获取的bsbolt项目根目录,也就是包含
bsbolt、conda_recipe、setup.py等文件的目录层级。 - 执行本地构建命令:
conda build ./conda_recipe -c conda-forge -c bioconda --override-channels
加
--override-channels参数是为了避免拉取其他渠道预编译的、绑定高版本glibc的二进制依赖,强制在当前系统环境下从源码编译,自动适配系统已有的glibc 2.28版本,从根源消除高版本glibc依赖问题。
- 构建完成后,终端输出末尾会打印生成的conda安装包(.tar.bz2格式)的本地绝对路径,直接执行本地安装命令即可:
conda install --use-local 构建输出的安装包完整路径 - 安装完成后执行
bsbolt --help,如果能正常返回帮助信息,就说明构建、安装均成功,可以正常使用。 - 注意事项:构建过程中如果提示依赖缺失,不需要手动干预,conda-build会自动根据conda_recipe目录下meta.yaml的依赖声明,拉取适配当前系统glibc版本的依赖包,不需要修改任何系统级配置。
内容的提问来源于stack exchange,提问作者John Thompson
相关产品推荐
相关产品推荐

