How to use requirements.txt to install all dependencies in a python project
Question:
I am new to python. Recently I got a project written by python and it requires some installation. I run below command to install but got an error.
# 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
I searched on google and found this link http://stackoverflow.com/questions/28167987/python-pip-trouble-installing-from-requirements-txt
but I don’t quite understand what the solution in that post.
Below is my requirements.txt file:
# 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
Is there a easy way to install all required dependencies in this python project?
EDIT1
Below is the output from 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/
I have already installed libfreetype6-dev
but the pip command still reports missing this dependency.
# 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.
Answers:
pip install -r requirements.txt
for python 2.x
pip3 install -r requirements.txt
for python 3.x
(in case multiple versions are installed)
(Taken from my comment)
pip
won’t handle system level dependencies. You’ll have to apt-get install libfreetype6-dev
before continuing. (It even says so right in your output. Try skimming over it for such errors next time, usually build outputs are very detailed)
If you are using Linux OS:
- Remove
matplotlib==1.3.1
from requirements.txt
- Try to install with
sudo apt-get install python-matplotlib
- Run
pip install -r requirements.txt
(Python 2), or pip3 install -r requirements.txt
(Python 3)
pip freeze > requirements.txt
If you are using Windows OS:
python -m pip install -U pip setuptools
python -m pip install matplotlib
python -m pip install -r requirements.txt
Referece: How to install packages using pip according to the requirements.txt file from a local directory?
Python 3:
pip3 install -r requirements.txt
Python 2:
pip install -r requirements.txt
To get all the dependencies for the virtual environment or for the whole system:
pip freeze
To push all the dependencies to the requirements.txt (Linux):
pip freeze > requirements.txt
If you want to install all the dependencies inside the requirements file, like npm install
on a Node.js project
in python you run the following command:
pip3 install -r ./requirements.txt
you can use pip
or pip3
both work
If you are using Linux as your OS then you can follow the below-mentioned steps:-
Firstly, remove matplotlib==1.3.1
from requirements.txt
After that try to install it with
sudo apt-get install python-matplotlib
Run pip install -r requirements.txt
(Python 2)
or pip3 install -r requirements.txt
(Python 3)
pip freeze > requirements.txt
If you are using Windows as your OS then use the following steps:
python -m pip install -U pip setuptools
python -m pip install matplotlib
check out this install all dependencies in a python project page.
I am new to python. Recently I got a project written by python and it requires some installation. I run below command to install but got an error.
# 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
I searched on google and found this link http://stackoverflow.com/questions/28167987/python-pip-trouble-installing-from-requirements-txt
but I don’t quite understand what the solution in that post.
Below is my requirements.txt file:
# 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
Is there a easy way to install all required dependencies in this python project?
EDIT1
Below is the output from 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/
I have already installed libfreetype6-dev
but the pip command still reports missing this dependency.
# 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.
pip install -r requirements.txt
for python 2.x
pip3 install -r requirements.txt
for python 3.x
(in case multiple versions are installed)
(Taken from my comment)
pip
won’t handle system level dependencies. You’ll have to apt-get install libfreetype6-dev
before continuing. (It even says so right in your output. Try skimming over it for such errors next time, usually build outputs are very detailed)
If you are using Linux OS:
- Remove
matplotlib==1.3.1
fromrequirements.txt
- Try to install with
sudo apt-get install python-matplotlib
- Run
pip install -r requirements.txt
(Python 2), orpip3 install -r requirements.txt
(Python 3) pip freeze > requirements.txt
If you are using Windows OS:
python -m pip install -U pip setuptools
python -m pip install matplotlib
python -m pip install -r requirements.txt
Referece: How to install packages using pip according to the requirements.txt file from a local directory?
Python 3:
pip3 install -r requirements.txt
Python 2:
pip install -r requirements.txt
To get all the dependencies for the virtual environment or for the whole system:
pip freeze
To push all the dependencies to the requirements.txt (Linux):
pip freeze > requirements.txt
If you want to install all the dependencies inside the requirements file, like npm install
on a Node.js project
in python you run the following command:
pip3 install -r ./requirements.txt
you can use pip
or pip3
both work
If you are using Linux as your OS then you can follow the below-mentioned steps:-
Firstly, remove matplotlib==1.3.1
from requirements.txt
After that try to install it with
sudo apt-get install python-matplotlib
Run pip install -r requirements.txt
(Python 2)
or pip3 install -r requirements.txt
(Python 3)
pip freeze > requirements.txt
If you are using Windows as your OS then use the following steps:
python -m pip install -U pip setuptools
python -m pip install matplotlib
check out this install all dependencies in a python project page.