linux离线ssl,为什么在Linux下找ssl共享库?

我试图从gliderlabs/alpine:latest构建一个docker映像,只包含pyenv及其依赖项。我希望这个容器能够通过pyenv安装和执行任意解释器。在

初步尝试

我从以下Dockerfile开始:FROM gliderlabs/alpine:latest

RUN apk-install curl \

ca-certificates \

bash \

git \

openssl-dev \

readline-dev \

bzip2-dev \

sqlite-dev \

build-base

RUN curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer -o /pyenv-installer

RUN touch /root/.bashrc && \

/bin/ln -s /root/.bashrc /root/.bash_profile && \

/bin/bash /pyenv-installer && \

rm /pyenv-installer && \

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile && \

echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile && \

echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

ENV HOME /root

ENV PYENV_ROOT $HOME/.pyenv

ENV PATH $PYENV_ROOT/shims:$PYENV_ROOT/bin:$PATH

错误

一旦构建完成,我就可以启动一个容器并运行bash,pyenv命令就如预期的那样可用了。在

但是,当我尝试运行pyenv install 3.4.3时,我得到了以下错误:

^{pr2}$

尝试修复

在google上搜索了一下之后,我找到了this页面,对于OSX/homebrew,它给出了以下修复建议:CFLAGS="-I$(brew --prefix openssl)/include"

LDFLAGS="-L$(brew --prefix openssl)/lib"

由于我不使用OSX或自制程序,所以我尝试通过在Dockerfile中添加以下行来使这些命令适应Alpine环境:ENV CFLAGS '-I/usr/include'

ENV LDFLAGS '-L/usr/lib'

请注意,/usr/lib包含:libssl.a

libssl.so

libssl.so.1.0.0

并且/usr/include包含{}。尽管如此,修改似乎对安装python3.4.3时的错误没有任何影响。在

问题

如何让pyenv在一个停靠的alpinellinux下安装python环境?在

编辑:pyenvbuild log显然是阻塞的,因为sockaddr_can类型未定义。我正式迷路了。这是一个musl错误吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值