raxacoricofallapatorius raxacoricofallapatorius - 4 months ago 62
Python Question

Error installing Numba on OS X

I'm unable to install Numba (via pip) on my OS X system.

I'm using

  • Python: 2.7.11 (Homebrew)

  • pip: 8.1.1

  • setuptools: 20.6.7

  • OS X: 10.11.4 (x86_64)

  • Xcode: 7.3

  • Xcode CLT:

  • Clang: 7.3 build 703

and have installed the prerequisites (I think) with

brew install llvm
git clone https://github.com/numba/llvmlite
cd llvmlite
LLVM_CONFIG=/usr/local/opt/llvm/bin/llvm-config python setup.py install
cd ..
rm -rf llvmlite

and also tried

brew install llvm
brew link --force llvm # later: brew unlink llvm
cd /usr/local/Cellar/llvm/X.X.X/include/llvm/Config/ # X.X.X = 3.6.2
ln -s llvm-config.h config.h

but I then

pip install numba


Failed building wheel for llvmlite
Running setup.py clean for llvmlite
Successfully built numba
Failed to build llvmlite
Installing collected packages: llvmlite, numba
Running setup.py install for llvmlite ...
error: option --single-version-externally-managed not recognized

Command "/usr/local/opt/python/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/b6/3rk65h797p7407x7d36sqn9c0000gn/T/pip-build-MY_vtC/llvmlite/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/b6/3rk65h797p7407x7d36sqn9c0000gn/T/pip-yoGGZY-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/b6/3rk65h797p7407x7d36sqn9c0000gn/T/pip-build-MY_vtC/llvmlite/

I'm stumped about how to proceed (without Conda!) and wonder if there's some simple fix I'm missing.


Here's what worked for me (with Homebrew Python on OS X 10.11.4):

brew install homebrew/versions/llvm37 --with-rtti
git clone https://github.com/numba/llvmlite
cd llvmlite
LLVM_CONFIG=/usr/local/Cellar/llvm37/3.7.1/bin/llvm-config-3.7 python setup.py install
LLVM_CONFIG=/usr/local/Cellar/llvm37/3.7.1/bin/llvm-config-3.7 pip install numba
rm -rf llvmlite