获取python Numba在Ubuntu 14.10或Fedora 21上使用python 2.7

最近,我有一个令人沮丧的时间让Python Numba在Ubuntu或Fedora Linux上工作。 主要问题是编译llvmlite。 我需要安装这些才能正确编译?

Solutions Collecting From Web of "获取python Numba在Ubuntu 14.10或Fedora 21上使用python 2.7"

我最后得到的版本是numba-0.17.0(也是0.18.2)和llvmlite-0.2.2(也是0.4.0)。 这里是Ubuntu和Fedora的相关依赖和配置选项。

对于Ubuntu 14.04 *可信任)

sudo apt-get install zlib1g zlib1g-dev libedit libedit-dev llvm-3.8 llvm-3.8-dev llvm-dev sudo pip install enum34 funcsigs LLVM_CONFIG=/usr/bin/llvm-config-3.8 pip install llvmlite --user LLVM_CONFIG=/usr/bin/llvm-config-3.8 pip install numba --user 

对于Ubuntu 14.10

 sudo apt-get install zlib1g zlib1g-dev libedit libedit-dev llvm-3.5 llvm-3.5-dev llvm-dev pip install enum34 funcsigs LLVM_CONFIG=/usr/bin/llvm-config-3.5 pip install llvmlite LLVM_CONFIG=/usr/bin/llvm-config-3.5 pip install numba 

对于Ubuntu 15.04

 sudo apt-get install zlib1g zlib1g-dev libedit2 libedit-dev llvm-3.6 llvm-3.6-dev llvm-dev pip install enum34 funcsigs LLVM_CONFIG=/usr/bin/llvm-config-3.6 pip install llvmlite LLVM_CONFIG=/usr/bin/llvm-config-3.6 pip install numba 

对于Fedora 21

 yum install zlib zlib-devel libstdc++-devel libstdc++ libstdc++-static llvm-3.5.0 llvm-devel-3.5.0 libedit libedit-devel pip install enum34 funcsigs LLVM_CONFIG=/usr/bin/llvm-config pip install llvmlite LLVM_CONFIG=/usr/bin/llvm-config pip install numba 

注意:这是最初由OP发布的问题 – 移到这里来保持这个适合SO。

感谢@SevakPrime

对于Ubuntu 14.04

 sudo apt-get install zlib1g zlib1g-dev libedit2 libedit-dev llvm-3.6 llvm-3.6-dev llvm-dev pip install enum34 funcsigs LLVM_CONFIG=/usr/bin/llvm-config-3.6 pip install llvmlite LLVM_CONFIG=/usr/bin/llvm-config-3.6 pip install numba 

更新01/2016

Ubuntu 15.10使用Python 3.4.3+

llvmlite版本0.9或更新(我安装0.10)

正如llvmlite的GitHub Page所述 :

从版本0.9开始,llvmlite需要LLVM 3.7。 它不支持早期版本或更高版本的LLVM。

我的解决方案,类似于其他答案(但关于python3):

为了满足依赖性 :(像libedit和压缩库)

 sudo apt-get install zlib1g zlib1g-dev libedit2 libedit-dev sudo pip3 install enum34 funcsigs 

llvm-3.7 (其他答案包括llvm软件包,它现在安装版本3.6,不工作)

 sudo apt-get install llvm-3.7 llvm-3.7-dev llvm-3.7-runtime llvm-3.7-tools 

尝试从pip安装llvmlite

 sudo pip3 install llvmlite 

(如果它工作,跳过这个)如果它不起作用,像在我的情况,从他们的存储库建立最后一个主分支:

 git clone https://github.com/numba/llvmlite cd llvmlite/ sudo ch -c "LLVM_CONFIG=/usr/bin/config-3.7 python3 setup.py build sudo sh -c "LLVM_CONFIG=/usr/bin/llvm-config-3.7 python3 setup.py install" 

最后,安装numba

 sudo pip3 install numba 

对于Ubuntu 15.10

fisrt检查点是否有正确的版本:

 pip install --upgrade pip pip install --upgrade wheel 

pip> = 8.1

 $ pip --version pip 8.1.1 from $ wheel version wheel 0.29.0 

apt-get install llvm的东西:

 sudo apt-get install zlib1g zlib1g-dev libedit2 libedit-dev sudo apt-get install llvm-3.7 llvm-3.7-dev llvm-dev 

然后用pip(警告llvmlite只能用llvm 3.7):

 pip install enum34 funcsigs LLVM_CONFIG=/usr/bin/llvm-config-3.7 pip install llvmlite LLVM_CONFIG=/usr/bin/llvm-config-3.7 pip install numba 

llvmlite有一个变化。 由于版本llvmlite-0.6.0 llvm-3.6是必需的。 现在正确的安装:

 sudo apt-get install zlib1g zlib1g-dev libedit2 libedit-dev llvm-3.6 llvm-3.6-dev llvm-dev pip install enum34 funcsigs LLVM_CONFIG=/usr/bin/llvm-config-3.6 pip install llvmlite LLVM_CONFIG=/usr/bin/llvm-config-3.6 pip install numba 

最初我没有得到它在这里的意见工作,然后我发现:1.同时llvm 3.6而不是3.5是必要的,2.对我来说, LLVM_CONFIG env变量不起作用。 所以我安装了这样的numba:

 sudo apt-get install zlib1g zlib1g-dev libedit-dev llvm-3.6 llvm-3.6-dev llvm-3.6-runtime llvm-3.6-tools sudo pip install enum34 funcsigs sudo mv /usr/bin/llvm-config /usr/bin/llvm-config_bak sudo ln -s /usr/bin/llvm-config-3.6 /usr/bin/llvm-config sudo pip install llvmlite sudo pip install numba sudo mv /usr/bin/llvm-config_bak /usr/bin/llvm-config 

(在Ubuntu 14.04上试过)

对于Fedora 23

首先检查你是否有最新的pip版本:

 pip install -U pip pip install -U wheel 

然后安装以下pacakges:

 dnf install zlib zlib-devel libstdc++-devel libstdc++ libstdc++-static llvm-3.7.0 llvm-devel-3.7.0 libedit libedit-devel pip install enum34 funcsigs 

然后从GIT存储库下载并解压llvmlite 。 假设你正在下载到/usr/local/llvmlite那么:

 git clone <address-for-llvmlite.git> /usr/local/llvmlite cd /usr/local/llvmlite 

按照此处所述构建源代码:

 LLVM_CONFIG=/usr/bin/llvm-config python setupy.py build 

刷新终端会话并安装内置llvmlite

 reset LLVM_CONFIG=/usr/bin/llvm-config python setup.py install 

最后下载并安装numba

 pip install numba 

对于Ubuntu 16.04:

 LLVM_CONFIG=/usr/bin/llvm-config-3.7 pip install llvmlite 

对于Ubuntu 16.04

 sudo pip3 install llvmlite 

明确要求llvm版本3.9。

但在官方软件包中,目前只有llvm版本高达3.8版本。 解决方法是像这样安装

然后你可以运行LLVM_CONFIG=/usr/bin/llvm-config-3.9 sudo pip3 install llvmlite

如果有人最近有这个问题,根据他们的github页面…

“llvmlite与Python 2.7和Python 3.4或更高版本一起工作从版本0.17.0开始,llvmlite需要LLVM 4.0,不支持早期版本或更高版本的LLVM。

他们有什么适用于什么的兼容性表。 所有最近的软件包都可以从他们的网页获得。