pip install numba==0.48.0 报错FileNotFoundError: [Errno 2] No such file or directory: ‘llvm-config‘

博客详细介绍了在安装numba库时遇到的依赖库llvmlite需要llvm编译器的问题。通过下载并源码编译llvm-8.0.0,解决了因Host GCC版本过低导致的编译错误。最后成功安装了numba及其依赖,并展示了安装过程和结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错原因和解决方案

tar -xvf llvm-8.0.0.src.tar.xz -C llvm
cd llvm/llvm-8.0.0.src
mkdir build
cd build 
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release \
     -DLLVM_ENABLE_RTTI=ON \
     -DLLVM_BINARY_DIR=~/llvm \ # 指定安装bin目录
     -DLLVM_MAIN_INCLUDE_DIR=~/llvm \ #指定安装include目录
     -DLLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN=ON \ # 支持gcc-4.8.x 编译版本,若不开启,则会报错,报错信息如下
     ..
make -j8
sudo make install 
  • Host GCC version should be at least 5.1 because LLVM will soon use new C++ features which your toolchain version doesn't support. Your version is 4.8.5. You can temporarily opt out using LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN
  • 安装完成之后,则可以执行
    pip install numba==0.48.0 -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com
  • 终端显示如下,完美解决。
Looking in indexes: http://mirrors.aliyun.com/pypi/simple
Collecting numba==0.48.0
  Using cached numba-0.48.0-cp39-cp39-linux_x86_64.whl
Requirement already satisfied: numpy>=1.15 in /home/xxx/miniconda3/lib/python3.9/site-packages (from numba==0.48.0) (1.21.4)
Collecting llvmlite<0.32.0,>=0.31.0dev0
  Downloading http://mirrors.aliyun.com/pypi/packages/17/fc/da81203725cb22d53e4f819374043bbfe3327831f3cb4388a3c020d7a497/llvmlite-0.31.0.tar.gz (110 kB)
     |████████████████████████████████| 110 kB 5.3 MB/s
Requirement already satisfied: setuptools in /home/xxx/miniconda3/lib/python3.9/site-packages (from numba==0.48.0) (52.0.0.post20210125)
Building wheels for collected packages: llvmlite
  Building wheel for llvmlite (setup.py) ... done
  Created wheel for llvmlite: filename=llvmlite-0.31.0-cp39-cp39-linux_x86_64.whl size=20385069 sha256=7d5ffc2c70f02751c1797277425f865ecf51db088bfae0d65602                        f8b4bba78aed
  Stored in directory: /home/xxx/.cache/pip/wheels/39/5c/8c/5ce3f4c7e62edc44fd7730160075f59321c9432d90767ef182
Successfully built llvmlite
Installing collected packages: llvmlite, numba
  Attempting uninstall: numba
    Found existing installation: numba 0.47.0
    Uninstalling numba-0.47.0:
      Successfully uninstalled numba-0.47.0
Successfully installed llvmlite-0.31.0 numba-0.48.0

Collecting llvmlite<0.32.0,>=0.31.0dev0 Using cached https://pypi.tuna.tsinghua.edu.cn/packages/17/fc/da81203725cb22d53e4f819374043bbfe3327831f3cb4388a3c020d7a497/llvmlite-0.31.0.tar.gz (110 kB) Requirement already satisfied: setuptools in /home/huxin/anaconda3/lib/python3.9/site-packages (from numba==0.48.0) (56.1.0) Building wheels for collected packages: llvmlite Building wheel for llvmlite (setup.py) ... error ERROR: Command errored out with exit status 1: command: /home/huxin/anaconda3/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/setup.py'"'"'; __file__='"'"'/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-4p6v4tbp cwd: /tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ Complete output (26 lines): running bdist_wheel /home/huxin/anaconda3/bin/python /tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py LLVM version... Traceback (most recent call last): File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 105, in main_posix out = subprocess.check_output([llvm_config, '--version']) File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 424, in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 505, in run with Popen(*popenargs, **kwargs) as process: File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 951, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 1821, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'llvm-config' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 168, in <module> main() File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 158, in main main_posix('linux', '.so') File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 107, in main_posix raise RuntimeError("%s failed executing, please point LLVM_CONFIG " RuntimeError: llvm-config failed executing, please point LLVM_CONFIG to the path for llvm-config error: command '/home/huxin/anaconda3/bin/python' failed with exit code 1 ---------------------------------------- ERROR: Failed building wheel for llvmlite Running setup.py clean for llvmlite Failed to build llvmlite Installing collected packages: llvmlite, numba Attempting uninstall: llvmlite Found existing installation: llvmlite 0.38.0 Uninstalling llvmlite-0.38.0: Successfully uninstalled llvmlite-0.38.0 Running setup.py install for llvmlite ... error ERROR: Command errored out with exit status 1: command: /home/huxin/anaconda3/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/setup.py'"'"'; __file__='"'"'/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-0xp2acyx/install-record.txt --single-version-externally-managed --compile --install-headers /home/huxin/anaconda3/include/python3.9/llvmlite cwd: /tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ Complete output (29 lines): running install running build got version from file /tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/llvmlite/_version.py {'version': '0.31.0', 'full': 'fe7d985f6421d87f613bd414479d29d912771562'} running build_ext /home/huxin/anaconda3/bin/python /tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py LLVM version... Traceback (most recent call last): File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 105, in main_posix out = subprocess.check_output([llvm_config, '--version']) File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 424, in check_output return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 505, in run with Popen(*popenargs, **kwargs) as process: File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 951, in __init__ self._execute_child(args, executable, preexec_fn, close_fds, File "/home/huxin/anaconda3/lib/python3.9/subprocess.py", line 1821, in _execute_child raise child_exception_type(errno_num, err_msg, err_filename) FileNotFoundError: [Errno 2] No such file or directory: 'llvm-config' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 168, in <module> main() File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 158, in main main_posix('linux', '.so') File "/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/ffi/build.py", line 107, in main_posix raise RuntimeError("%s failed executing, please point LLVM_CONFIG " RuntimeError: llvm-config failed executing, please point LLVM_CONFIG to the path for llvm-config error: command '/home/huxin/anaconda3/bin/python' failed with exit code 1 ---------------------------------------- Rolling back uninstall of llvmlite Moving to /home/huxin/anaconda3/lib/python3.9/site-packages/llvmlite from /home/huxin/anaconda3/lib/python3.9/site-packages/~lvmlite Moving to /home/huxin/anaconda3/lib/python3.9/site-packages/llvmlite-0.38.0-py3.9.egg-info from /home/huxin/anaconda3/lib/python3.9/site-packages/~lvmlite-0.38.0-py3.9.egg-info ERROR: Command errored out with exit status 1: /home/huxin/anaconda3/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/setup.py'"'"'; __file__='"'"'/tmp/pip-install-fji4b7f3/llvmlite_2fba7ae59d6540769239538c32752489/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-0xp2acyx/install-record.txt --single-version-externally-managed --compile --install-headers /home/huxin/anaconda3/include/python3.9/llvmlite Check the logs for full command output.
最新发布
07-26
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值