2016-04-03 146 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