【问题标题】:Installing glibc 2.14 and 2.17 for singularity container for centos6 kernel为 centos6 内核的奇异容器安装 glibc 2.14 和 2.17
【发布时间】:2021-10-31 19:36:18
【问题描述】:

我正在尝试构建一个用于运行 centOS 6 的集群的奇异容器。我需要的一些包在 python 中。问题是pip安装需要glibc-2.14和glibc-2.17。我是根据herehere安装的。

这是我的定义文件:

Bootstrap: docker
From: conda/miniconda3-centos6

%files

conda_env.yml
glibc-2.14
CentOS-Base.repo
glibc-2.17-55.el6.x86_64.rpm
glibc-common-2.17-55.el6.x86_64.rpm
glibc-devel-2.17-55.el6.x86_64.rpm
glibc-headers-2.17-55.el6.x86_64.rpm
glibc-static-2.17-55.el6.x86_64.rpm
glibc-utils-2.17-55.el6.x86_64.rpm
nscd-2.17-55.el6.x86_64.rpm

%post

rm /etc/yum.repos.d/CentOS-Base.repo
mv CentOS-Base.repo /etc/yum.repos.d/

yum install -y wget bzip2 gcc perl bzip2-devel gd

HOME="$PWD"

cd glibc-2.14
mkdir build
cd build
../configure --prefix=/opt/glibc-2.14
make -j8
make install
export LD_LIBRARY_PATH=/opt/glibc-2.14/lib 

cd "$HOME"

rpm -Uvh glibc-2.17-55.el6.x86_64.rpm \
glibc-common-2.17-55.el6.x86_64.rpm \
glibc-devel-2.17-55.el6.x86_64.rpm \
glibc-headers-2.17-55.el6.x86_64.rpm \
glibc-static-2.17-55.el6.x86_64.rpm \
glibc-utils-2.17-55.el6.x86_64.rpm \

/usr/local/bin/conda env create -f conda_env.yml    

glibc-2.14 安装良好,但安装 glibc-2.17 被证明是困难的。安装失败并出现以下错误:

warning: glibc-2.17-55.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID 73ec361c: NOKEY
Preparing...                ########################################### [100%]
   1:glibc-common           ########################################### [ 17%]
   2:glibc                  ########################################### [ 33%]
/usr/sbin/glibc_post_upgrade: While trying to execute /usr/sbin/iconvconfig.x86_64 child terminated abnormally
warning: %post(glibc-2.17-55.el6.x86_64) scriptlet failed, exit status 115
error: %pre(glibc-headers-2.17-55.el6.x86_64) scriptlet failed, signal 11
error:   install: %pre scriptlet failed (2), skipping glibc-headers-2.17-55.el6
   3:glibc-devel            ########################################### [ 50%]
error: %post(glibc-devel-2.17-55.el6.x86_64) scriptlet failed, signal 11
   4:glibc-static           ########################################### [ 67%]
   5:glibc-utils            ########################################### [ 83%]
FATAL:   While performing build: while running engine: exit status 6

像2.14一样安装glibc-2.17会导致调用python时出现segfault。有经验的人可以就可能的解决方案提供一些见解吗?或者,如果有用于 centOS 6 的容器以及更新的 glibc?

提前致谢!

【问题讨论】:

    标签: pip centos glibc singularity-container


    【解决方案1】:

    问题是pip安装需要glibc-2.14和glibc-2.17。

    不可能某些东西需要同时 GLIBC-2.14 和 GLIBC-2.17 -- 这些版本通常不会在一个系统上共存。

    安装 GLIBC-2.17 应满足所有要求(它同时提供 GLIBC-2.17 和 所有以前的版本符号)。

    【讨论】:

    • 你是对的。我想我对最初的错误消息感到困惑'Pip subprocess error: /usr/local/envs/htseq/bin/python: /lib64/libc.so.6: version GLIBC_2.14 not found (required by /usr/local /envs/htseq/bin/python) /usr/local/envs/htseq/bin/python: /lib64/libc.so.6: 未找到 GLIBC_2.17 版本(/usr/local/envs/htseq/bin 需要/python)' 我尝试通过 rpm 安装 glibc-2.17,它现在​​可以工作,即使它告诉我在安装期间找不到 glibc-2.14。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-17
    • 2018-04-04
    • 1970-01-01
    • 2017-03-10
    • 1970-01-01
    • 2015-01-26
    • 2012-03-16
    相关资源
    最近更新 更多