Je suis fatigué d’essayer d’installer numpy et scipy pour phyton 2.7.5, j’ai besoin de cette version de python car mon objectif final est d’installer la classe ( http://class-code.net / ) et montepython ( http://montepython.net/ ).
(J'ai Ubuntu 12.04)
Lorsque j'essaie d'importer numpy ou scipy, l'erreur suivante s'affiche à chaque fois:
$ phyton2.7
>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
import add_newdocs
File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
from numpy.lib import add_newdoc
File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 4, in <module>
from type_check import *
File "/usr/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 8, in <module>
import numpy.core.numeric as _nx
File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 5, in <module>
import multiarray
ImportError: /usr/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined symbol: PyUnicodeUCS4_AsUnicodeEscapeString
>> import scipy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/scipy/__init__.py", line 78, in <module>
from numpy import show_config as show_numpy_config
File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
import add_newdocs
File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
from numpy.lib import add_newdoc
File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 4, in <module>
from type_check import *
File "/usr/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 8, in <module>
import numpy.core.numeric as _nx
File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 5, in <module>
import multiarray
ImportError: /usr/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined symbol: PyUnicodeUCS4_AsUnicodeEscapeString
Afin de me débarrasser de l'erreur j'avais essayé:
$ Sudo apt-get install build-essential python-dev gfortran
$ Sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose
$ Sudo pip install requests
$ Sudo pip install numpy
et $ Sudo pip install scipy
export PYTHONPATH=/usr/lib/python2.7/dist-packages:${PYTHONPATH}
La dernière fois que j'ai installé numpy et scipy (dans l'ancienne version 10.b), cela fonctionnait pour moi.Sudo sh -c "wget http://python-distribute.org/distribute_setup.py -O- | python"
Sudo sh -c "wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py -O- | python"
puis installez-les tous les deux avec pip comme dans (4)
Mais maintenant, il semble que le serveur de python-distribute.org soit en panne. J'ai eu l'erreur suivante:
http://python-distribute.org/distribute_setup.py
Resolving python-distribute.org (python-distribute.org)... failed: Name or service not known.
wget: unable to resolve Host address `python-distribute.org'
J'avais aussi essayé d'installer numpy et scipy à partir du logiciel Synaptic et du centre logiciel Ubuntu
J'avais échoué dans chacune de ces tentatives et maintenant je ne sais pas quoi faire. Est-ce que je manque quelque chose? Comment obtenir numpy et scipy correctement installés pour python? Toute idée sera appréciée.
quand je fais
echo $PYTHONPATH
Je reçois
/usr/lib/python2.7/dist-packages
Ok, suivons le guide d'installation :
Il dit que vous avez besoin de python 2.7 (que vous avez déjà):
$ python --version
Python 2.7.4
Ensuite, il est indiqué que vous avez également besoin du paquet numpy, version> = 1.4.1:
politique d'apt-cache python-numpy python-numpy: installé: (aucun) candidat: 1: 1.7.1-1ubuntu1. Tableau des versions: 1: 1.7.1-1ubuntu1 0 500 http://archive.ubuntu.com/ubuntu/ raring/main Packages AMD64
Comme vous pouvez le constater, j’ai la version 1.7.1 de numpy disponible, nous allons donc procéder à son installation:
Sudo apt-get install python-numpy
Maintenant, il est dit que nous avons besoin de cython, vérifions si ce paquet est disponible:
politique d'apt-cache cython cython: installé: (aucun) Candidat: 0.17.4-0ubuntu1 Tableau de versions: 0.17.4 -0ubuntu1 0 500 http://archive.ubuntu.com/ubuntu/ raring/main Packages AMD64
Nous l'avons, nous l'installons:
Sudo apt-get install cython
S'il vous plaît, notez qu'il y a d'autres paquets qui sont des dépendances qui sont également installés.
Curieusement, nous avons également besoin du module scipy:
Sudo apt-get install python-scipy
Test . Ouvrez python dans un terminal et tapez ce qui suit:
$ python
Python 2.7.4 (default, Sep 26 2013, 03:20:26)
[GCC 4.7.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> import scipy
>>> import cython
>>> exit()
Ce qui précède doit être sans erreur. Si quelque chose ne va pas, relisez le guide et relisez-le, vous avez oublié/sauté une étape.
En téléchargeant les sources CLASS à partir de leur page, accédez au répertoire du terminal, décompressez-le et effectuez-le:
cd où/le/tar/est tar zxf class_v2.0.2.tar.gz cd class_v2.0.2 make
Ici, nous attendrons que ce soit terminé. Une fois que cela est fait, nous allons dans le répertoire python et commençons la magie. Sans quitter les répertoires, lancez ceci:
cd python python setup.py construire python setup.py install --user
Nous avons maintenant CLASS installé dans notre répertoire utilisateur. Nous devrions le tester!
python
Python 2.7.4 (default, Sep 26 2013, 03:20:26)
[GCC 4.7.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from classy import Class
>>> exit()
Tout est gentil un cozzy jusqu'à ici.
Maintenant le temps de la vérité, téléchargez monthypython dans le répertoire de votre code:
cd ~ code mkdir code cd wget https://www.dropbox.com/s/l7mnhwsktp1m8b5/montepython_v1.2.5.tar.bz2?dl=1 -O montepython_v1 .2.5.tar.bz2 Tar jxf montepython_v1.2.5.tar.bz2
Dans les instructions d'installation quelques notes qui ne sont pas pertinentes dans ce cas particulier (une nouvelle installation), mais cela peut être important lorsque vous mettez à jour montepython.
Ce changement est important. Vous vous rappelez où vous avez installé CLASS? Maintenant, vous devriez dire à Monte Python où cela se trouve. Dans mon cas, il s'agit de /home/braiam/src/class_v2.0.2/class
, le vôtre peut être différent. Vous pouvez utiliser find
pour le rechercher:
find ~ -name class -print
Eh bien, maintenant je modifie le fichier default.conf
en utilisant ce que vous voulez (je vais utiliser nano) et modifie le chemin root
, de sorte que le fichier complet ressemble à ceci:
# Fill in the relevant path to your personal distribution.
# If you create a new file out of this one, please remember to call
# MontePython.py with the option '-conf my.conf'
# At minimum, this file should contain one line:
# ** path['cosmo'] = path to the cosmological code you are using. Note, if you are
# using a modified version of class, be sure that the path contains the Word
# class, otherwise the code might not recognise it.
# If you want to use a data folder different from the one present in the folder
# you are executing the code, please also add:
# ** path['data'] = /path/to/the/other/data/
root = '/home/braiam/src/class_v2.0.2/'
path['cosmo'] = root+'/class/'
Enregistrez le fichier et quittez.
Testez montepython! Si tout s'est bien passé, vous devriez pouvoir exécuter code/MontePython.py --help
dans votre répertoire montepythong et tout devrait fonctionner:
~/src/montepython $ code/MontePython.py --help utilisation: MontePython.py [-h] [-N nombre d'étapes] [-o dossier de sortie] [-p entrée fichier de paramètres] [-c matrice de cov en entrée] [-j méthode de saut] [-f facteur de saut] [-conf fichier de configuration] [-chain_number numéro de chaîne] [ -r redémarrer à partir de la chaîne] [-bf redémarrer à partir du fichier le mieux ajusté] [-info [informations de calcul du fichier souhaité [informations de calcul du fichier souhaité ...]]] [-bins souhaités nombre de bacs, la valeur par défaut est 20] [-no_mean] [-comp comparaison dossier] [-extra fichier de tracé pour les besoins personnalisés] [-noplot] [-all] [-ext change l'extension pour le fichier de sortie] [-fontsize la taille de police désirée, la valeur par défaut est 15] [-ticksize la taille désirée, la valeur par défaut est 13] Monte Python, un code de Monte Carlo en P ython arguments facultatifs: - h, --aide à afficher ce message d’aide et à quitter - N nombre d’étapes - o dossier de sortie - p fichier de paramètres d'entrée - c matrice de cov en entrée - j méthode de saut - f facteur de saut - fichier de configuration conf. - numéro_chaîne numéro de chaîne - r redémarrer à partir de la chaîne - bf redémarrer à partir du fichier le mieux ajusté - info [informations de calcul du fichier souhaité [informations de calcul du fichier souhaité ... ]] - nombre de bacs souhaité, valeur par défaut: 20 - no_mean - dossier de comparaison des comp. - fichier de tracé supplémentaire pour les besoins personnalisés -noplot - all - extension de changement externe pour le fichier de sortie - taille de la police de caractères de la taille de police désirée, valeur par défaut de 15 - taille de la taille souhaitée, 13 par défaut
Avec ceci, vous avez installé montepython et prêt à rouler!