2016-04-03 294 views
9

我无法在OS X系统上安装Numba(通过pip)。在OS X上安装Numba时出错

我使用

  • 的Python:2.7.11(自制)
  • PIP:8.1.1
  • 的setuptools:20.6.7
  • OS X:10.11.4(x86_64的)
  • 的Xcode:7.3
  • Xcode的CLT:7.3.0.0.1.1457485338
  • 锵:7.3构建703

,并与

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 

安装的先决条件(我认为),也试过

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 

,但我当时

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/ 

我难以理解如何进行(没有Conda!),并怀疑是否有一些简单的修复方法,我错过了。

+0

您是否尝试过[用'--egg'选项](http://stackoverflow.com/questions/14296531/what-does-error-option - 单版本外部管理 - 不承认-IND)? – alecxe

+0

@alecxe:同样的错误。并且没有理由应该是最新的setuptools的问题,如果它? – orome

+0

你有没有试用conda?它通常比较简单。 –

回答

15

下面是我工作(与家酿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 
+2

在我的情况下,它说llvm 3.8.x是必需的。所以我使用'brew install homebrew/versions/llvm38 --with-rtti'和'LLVM_CONFIG =/usr/local/Cellar/llvm38/3.8.0/bin/llvm-config-3.8 python setup.py install'等。解决方案是一样的,thx。 – fdelia

0

最简单的方法是安装miniconda比做:

conda install numba 

完美的作品在Mac(和其他平台)。

我建议创建一个新的环境,第一:

conda create -n my_numba_env 

激活它:

source activate my_numba_env 

并安装numba:

conda install numba 
+2

No Conda。 mimiconda会与Homebrew(和Homebrew Python?)以及使用(Homebrew)pip安装的Anaconda堆栈的一部分一起工作吗? – orome

+0

我知道我总是可以创建新环境来解决任何安装问题。这不是(我曾经想过)在这些情况下的问题。 – orome

+0

我发现创造一个新的环境是一个绝佳的时间。不用担心会破坏任何东西。支付几MB的磁盘空间是一个非常好的折衷。 –

2

或者你可以使用自制软件:

brew install homebrew/python/numba