120 votes

Comment utiliser exigences.txt pour installer toutes les dépendances dans un projet python

Je suis nouveau sur le python. Récemment, j'ai eu un projet écrit en python et il nécessite l'installation de certains. - Je exécuter commande ci-dessous pour l'installer mais j'ai reçu un message d'erreur.

# 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

J'ai cherché sur google et trouvé ce lien http://stackoverflow.com/questions/28167987/python-pip-trouble-installing-from-requirements-txt mais je n'arrive pas à comprendre ce que la solution dans ce post.

Ci-dessous mon requirements.txt fichier:

# 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 pour installer toutes les dépendances nécessaires dans ce projet de python?

EDIT1

Ci-dessous est 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/

J'ai déjà installé libfreetype6-dev mais le pip de commande de rapports toujours absent 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.

98voto

Nilesh Pansuriya Points 296

Si vous utilisez un système d'exploitation Linux:

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

Si vous utilisez le système d'exploitation Windows:

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

54voto

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

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

10voto

Jema Points 41

3voto

FMaz Points 324

(Tiré de mon commentaire)

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X