Hier is het probleem
Ik heb een requirements.txt dat eruit ziet als:
BeautifulSoup==3.2.0
Django==1.3
Fabric==1.2.0
Jinja2==2.5.5
PyYAML==3.09
Pygments==1.4
SQLAlchemy==0.7.1
South==0.7.3
amqplib==0.6.1
anyjson==0.3
...
Ik heb een lokale archiefmap met alle pakketten en andere.
Ik heb een nieuwe virtualenv aangemaakt met
bin/virtualenv testing
Na het activeren heb ik geprobeerd om de pakketten te installeren volgens requirements.txt vanuit de lokale archief directory.
source bin/activate
pip install -r /path/to/requirements.txt -f file:///path/to/archive/
Ik kreeg wat uitvoer die erop lijkt te wijzen dat de installatie in orde is
Downloading/unpacking Fabric==1.2.0 (from -r ../testing/requirements.txt (line 3))
Running setup.py egg_info for package Fabric
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no files found matching 'fabfile.py'
Downloading/unpacking South==0.7.3 (from -r ../testing/requirements.txt (line 8))
Running setup.py egg_info for package South
....
Maar later bleek dat geen van de pakketten correct is geïnstalleerd. Ik kan het pakket niet importeren, en er is er geen gevonden in de site-packages directory van mijn virtualenv. Dus wat is er fout gegaan?
Ik'heb het bovenstaande gelezen, realiseer me dat dit een oude vraag is, maar het'is totaal onopgelost en nog steeds bovenaan in mijn google zoekresultaten dus hier'is een antwoord dat voor iedereen werkt:
pip install -r /path/to/requirements.txt
Dit werkt voor mij:
$ pip install -r requirements.txt --no-index --find-links file:///tmp/packages
--no-index
- Negeer de pakket index (kijk alleen naar --find-links
URLs).
-f, --find-links <URL>
- Als een URL of een pad naar een html bestand, dan wordt er gezocht naar links naar archieven.
Als een lokaal pad of file://
URL dat's een directory, dan zoeken naar archieven in de directory lijst.