Obtenir python Numba sur Ubuntu 14.10 ou Fedora 21 sur python 2.7

Récemment, j’ai eu du mal à faire fonctionner python Numba sur Ubuntu ou Fedora Linux. Le principal problème a été la compilation de llvmlite. De quoi ai-je besoin pour les comstackr correctement?

    Les versions que je travaillais à la fin étaient numba-0.17.0 (également 0.18.2) et llvmlite-0.2.2 (aussi 0.4.0). Voici les dépendances et options de configuration pertinentes sur Ubuntu et Fedora.

    Pour Ubuntu 14.04 * Trusty)

    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 

    Pour 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 

    Pour 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 

    Pour 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 

    Note: ceci a été initialement publié par le PO dans la question-déplacé ici pour garder cela pour SO.

    Merci à @SevakPrime

    Pour 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 

    Mise à jour 01/2016

    Ubuntu 15.10 en utilisant Python 3.4.3+

    llvmlite version 0.9 ou plus récente (j’ai installé 0.10)

    Comme indiqué dans la page GitHub de llvmlite :

    A partir de la version 0.9, llvmlite nécessite LLVM 3.7. Il ne prend pas en charge les versions antérieures ou ultérieures de LLVM.

    Ma solution, similaire à celles des autres réponses (mais concernant python3):

    Pour répondre aux dépendances : (comme libedit et les librairies de compression)

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

    llvm-3.7 (Autres réponses incluses dans le package llvm, qui installe actuellement la version 3.6, ne fonctionne pas)

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

    Essayer d’installer llvmlite à partir de pip :

     sudo pip3 install llvmlite 

    (Si cela fonctionne, passez cette étape) Si cela ne fonctionne pas, comme dans mon cas, comstackz la dernière twig principale de leur référentiel:

     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" 

    Enfin, installez numba :

     sudo pip3 install numba 

    Pour l’ubuntu 15.10

    Vérifiez d’abord que pip a la version correcte:

     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 stuff:

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

    et ensuite avec pip (avertissement llvmlite fonctionne uniquement avec 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 

    Il y avait un changement dans llvmlite. Depuis la version llvmlite-0.6.0 llvm-3.6 est requirejs. L’installation correcte est maintenant:

     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 

    Au début, je ne l’ai pas fait fonctionner avec les commentaires ici et j’ai découvert: 1. entre-temps, llvm 3.6 au lieu de 3.5 est nécessaire et 2. pour moi la variable env LLVM_CONFIG ne fonctionne pas. J’ai donc installé numba comme ceci:

     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 

    (Essayé sur Ubuntu 14.04.)

    Pour Fedora 23

    Vérifiez d’abord que vous avez la dernière version de pip :

     pip install -U pip pip install -U wheel 

    Installez ensuite les paquets suivants:

     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 

    Ensuite, téléchargez et décompressez llvmlite partir du référentiel GIT. Supposons que vous téléchargez sur /usr/local/llvmlite alors:

     git clone  /usr/local/llvmlite cd /usr/local/llvmlite 

    Construisez la source comme décrit ici :

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

    Actualiser la session de terminal et installer llvmlite construit

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

    Enfin, téléchargez et installez numba by

     pip install numba 

    Pour Ubuntu 16.04:

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

    Pour Ubuntu 16.04

     sudo pip3 install llvmlite 

    demande explicitement llvm version 3.9.

    Mais dans les paquets officiels, il n’y a (actuellement) que llvm jusqu’à la version 3.8. La solution est de l’installer comme ça

    Ensuite, vous pouvez lancer LLVM_CONFIG=/usr/bin/llvm-config-3.9 sudo pip3 install llvmlite

    Au cas où quelqu’un d’autre aurait récemment eu ce problème, selon leur page github …

    “llvmlite fonctionne avec Python 2.7 et Python 3.4 ou supérieur. A partir de la version 0.17.0, llvmlite requirejs LLVM 4.0. Il ne prend pas en charge les versions antérieures ou ultérieures de LLVM.

    Ils ont un tableau de compatibilité de ce qui fonctionne avec quoi. Tous les paquets récents peuvent être obtenus à partir de leur page Web.