Dockerfile因numba安装失败而出现llvm-config错误 [英] Dockerfile fails with llvm-config error for numba install

查看:707
本文介绍了Dockerfile因numba安装失败而出现llvm-config错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用pypy的Dockerfile失败,出现FileNotFoundError:[错误2]没有这样的文件或目录:在安装llvmlite时出现 llvm-config,它是numba的依赖项,在我的要求中列出。txt

My Dockerfile using a pypy base fails with FileNotFoundError: [Errno 2] No such file or directory: 'llvm-config' when installing llvmlite, a dependency of numba which is listed in my requirements.txt

我试图遵循并更新此处的说明
在Debian 8上使用Python numba / llvmlite-我无法建立llvmlite

I tried to follow and update the instructions here Python numba / llvmlite on Debian 8 - i can't build llvmlite

我的错误更详细:

Building wheels for collected packages: llvmlite
Building wheel for llvmlite (setup.py): started
Building wheel for llvmlite (setup.py): finished with status 'error'
ERROR: Command errored out with exit status 1:
 command: /usr/local/bin/pypy3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-ux49fegr/llvmlite/setup.py'"'"'; __file__='"'"'/tmp/pip-install-ux49fegr/llvmlite/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-8s6wwump --python-tag pp371
   cwd: /tmp/pip-install-ux49fegr/llvmlite/
Complete output (26 lines):
running bdist_wheel
/usr/local/bin/pypy3 /tmp/pip-install-ux49fegr/llvmlite/ffi/build.py
LLVM version... Traceback (most recent call last):
  File "/tmp/pip-install-ux49fegr/llvmlite/ffi/build.py", line 105, in main_posix
    out = subprocess.check_output([llvm_config, '--version'])
  File "/usr/local/lib-python/3/subprocess.py", line 336, in check_output
    **kwargs).stdout
  File "/usr/local/lib-python/3/subprocess.py", line 403, in run
    with Popen(*popenargs, **kwargs) as process:
  File "/usr/local/lib-python/3/subprocess.py", line 722, in __init__
    restore_signals, start_new_session)
  File "/usr/local/lib-python/3/subprocess.py", line 1354, in _execute_child
    raise child_exception_type(errno_num, err_msg)
FileNotFoundError: [Errno 2] No such file or directory: 'llvm-config'

安装conda。有没有办法在没有pypy的情况下实现numba安装?

I don't want the heavy weight of a conda installation. Is there a way to achieve a numba install for pypy without it?

FROM pypy:3.6-slim-stretch

RUN apt-get update && apt-get install -y gnupg wget software-properties-common
RUN wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - 15CF4D18AF4F7421
RUN apt-add-repository "deb http://apt.llvm.org/stretch/ llvm-toolchain-stretch-6.0 main"
RUN apt-get update
RUN apt-get -y install cython python-llvm build-essential libedit-dev
RUN apt-get -y install libllvm6.0 llvm-6.0-dev llvm-dev

RUN pip install enum34
ENV LLVM_CONFIG=/usr/lib/llvm-6.0-dev/bin/llvm-config pip install llvmlite
ENV LLVM_CONFIG=/usr/lib/llvm-6.0-dev/bin/llvm-config pip install numba
# ENV LD_LIBRARY_PATH /usr/lib/llvm-6.0-dev/lib/

#... other stuff

RUN apt-get clean && apt-get -y update
RUN apt-get -y install python3-dev \
    && apt-get -y install build-essential

# Add requirements
COPY requirements.txt /tmp/

# Install sphinx first as it does not work inside requirements
RUN pip install -U pip && pip install -U sphinx && pip install numpy && pip install cython &&  \
  pip install -r /tmp/requirements.txt

我希望构建干净在pypy上使用numba的docker镜像

I expect a clean build of the docker image with numba on pypy

推荐答案

WORKAROUND 如果该错误在4月17日之后出现(他们发布了新版本,请参见历史)。
作为解决方法,请尝试安装以前的版本

WORKAROUND If the error appeared after April the 17th (they released a new version, see history). As a workaround try installing a previous version

pip3 install llvmlite==0.31.0

这篇关于Dockerfile因numba安装失败而出现llvm-config错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆