2017-01-04 1 views
13

Je suis nouveau sur python. Récemment j'ai eu un projet écrit par python et il nécessite une installation. Je cours en dessous de la commande à installer mais j'ai eu une erreur.Comment utiliser requirements.txt pour installer toutes les dépendances dans un projet python

# pip install requirements.txt 
Collecting requirements.txt 
    Could not find a version that satisfies the requirement requirements.txt (from versions:) 
No matching distribution found for requirements.txt 

Je recherche google et trouvé ce lien http://stackoverflow.com/questions/28167987/python-pip-trouble-installing-from-requirements-txt mais je ne comprends pas tout à fait ce que la solution à ce poste.

Ci-dessous mon fichier requirements.txt:

# cat requirements.txt 
ordereddict==1.1 
argparse==1.2.1 
python-dateutil==2.2 
matplotlib==1.3.1 
nose==1.3.0 
numpy==1.8.0 
pymongo==3.3.0 
psutil>=2.0 

est-il un moyen facile à installer toutes les dépendances nécessaires dans ce projet python?

EDIT1

est inférieure à la sortie de pip3 install -r requirements.txt.

# pip3 install -r requirements.txt 
Requirement already satisfied: ordereddict==1.1 in /usr/local/lib/python3.5/dist-packages (from -r requirements.txt (line 1)) 
Collecting argparse==1.2.1 (from -r requirements.txt (line 2)) 
    Using cached argparse-1.2.1.tar.gz 
Collecting python-dateutil==2.2 (from -r requirements.txt (line 3)) 
    Using cached python-dateutil-2.2.tar.gz 
Collecting matplotlib==1.3.1 (from -r requirements.txt (line 4)) 
    Using cached matplotlib-1.3.1.tar.gz 
    Complete output from command python setup.py egg_info: 
    ============================================================================ 
    Edit setup.cfg to change the build options 

    BUILDING MATPLOTLIB 
       matplotlib: yes [1.3.1] 
        python: yes [3.5.2 (default, Nov 17 2016, 17:05:23) [GCC 
          5.4.0 20160609]] 
        platform: yes [linux] 

    REQUIRED DEPENDENCIES AND EXTENSIONS 
        numpy: yes [version 1.11.3] 
        dateutil: yes [using dateutil version 2.6.0] 
        tornado: yes [tornado was not found. It is required for the 
          WebAgg backend. pip/easy_install may attempt to 
          install it after matplotlib.] 
       pyparsing: yes [using pyparsing version 2.1.10] 
        pycxx: yes [Official versions of PyCXX are not compatible 
          with Python 3.x. Using local copy] 
        libagg: yes [pkg-config information for 'libagg' could not 
          be found. Using local copy.] 
        freetype: no [The C/C++ header for freetype2 (ft2build.h) 
          could not be found. You may need to install the 
          development package.] 
         png: yes [pkg-config information for 'libpng' could not 
          be found. Using unknown version.] 

    OPTIONAL SUBPACKAGES 
       sample_data: yes [installing] 
        toolkits: yes [installing] 
        tests: yes [using nose version 1.3.7] 

    OPTIONAL BACKEND EXTENSIONS 
        macosx: no [Mac OS-X only] 
        qt4agg: no [PyQt4 not found] 
        gtk3agg: no [gtk3agg backend does not work on Python 3] 
       gtk3cairo: no [Requires cairo to be installed.] 
        gtkagg: no [Requires pygtk] 
        tkagg: no [TKAgg requires Tkinter.] 
        wxagg: no [requires wxPython] 
         gtk: no [Requires pygtk] 
         agg: yes [installing] 
        cairo: no [cairo not found] 
       windowing: no [Microsoft Windows only] 

    OPTIONAL LATEX DEPENDENCIES 
        dvipng: no 
       ghostscript: no 
        latex: no 
        pdftops: no 

    ============================================================================ 
          * The following required packages can not be built: 
          * freetype 

    ---------------------------------------- 
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-don4ne_2/matplotlib/ 

Je l'ai déjà installé libfreetype6-dev mais la commande pip rapports toujours portés disparus cette dépendance.

# apt-get install libfreetype6-dev 
Reading package lists... Done 
Building dependency tree  
Reading state information... Done 
libfreetype6-dev is already the newest version (2.6.1-0.1ubuntu2). 
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded. 
+8

'pip installer -r requirements.txt' – MrLeeh

+0

J'ai mis à jour la sortie d'inclure la sortie avec le drapeau -r mais toujours pas en mesure d'installer. –

+0

alors maintenant lire la nouvelle sortie et penser - ne nous attendez pas. – furas

Répondre

8

Si vous utilisez Linux OS:

  1. Retirer matplotlib==1.3.1 de requirements.txt
  2. Essayez d'installer avec sudo apt-get install python-matplotlib
  3. Run pip install -r requirements.txt (Python 2), ou pip3 install -r requirements.txt (Python 3)
  4. pip freeze > requirements.txt

Si vous utilisez Windows OS:

  1. python -m pip install -U pip setuptools
  2. python -m pip install matplotlib
+3

Bonjour Nilesh, bienvenue dans Stack Overflow. À l'avenir, veuillez inclure une explication de ce que les commandes que vous donnez dans votre réponse, ne dites pas simplement aux gens d'exécuter des commandes. – yakatz

4

pip install -r requirements.txt pour python 2.x

pip3 install -r requirements.txt pour python 3.x (en cas de plusieurs versions sont installées)

+0

J'ai essayé les deux mais j'ai quand même échoué. J'ai posté la sortie de cette commande. –

+0

Je pense qu'il existe une dépendance obligatoire 'freetype' manquante pour l'installation de MATPLOTLIB.Essayez d'installer la dépendance et lancez pip -r requirements.txt à nouveau. –

+0

'pip' ne gérera pas les dépendances au niveau du système. Vous devrez 'apt-get install libfreetype6-dev' avant de continuer. (Il le dit même dans votre sortie, essayez de le parcourir pour de telles erreurs la prochaine fois, les builds sont généralement très détaillés) –

0

(Extrait de mon commentaire)

pip ne traitera pas des dépendances au niveau du système. Vous devrez apt-get install libfreetype6-dev avant de continuer. (Il dit même si juste dans votre sortie Essayez rasant pour de telles erreurs la prochaine fois, construire généralement des sorties sont très détaillées.)

+0

J'ai déjà installé libfreetype6-dev. Mais pip signale toujours cette erreur. –

+0

Avez-vous vu ce bug? https://github.com/matplotlib/matplotlib/issues/3029/ –