2012-01-25 4 views
4

J'ai fait beaucoup de lectures dernièrement sur Heroku et je pense à passer à autre chose. Je pensais essayer leur petit tutoriel et jouer un peu avec.Tutoriel Heroku avec PIP, virtualenv, psycopg2, Django sur Windows 7

Ok. Temps pour une confession. Bien que virtualenv soit installé, je ne l'utilise pas vraiment. Je ne suis pas un type qui doit souvent passer d'un projet à un autre (par exemple, un entrepreneur comme moi). J'apprécie vraiment l'idée, mais je ne suis pas si expérimentée. Je sais que tout le monde dit que ce sont les meilleures pratiques de nos jours.

Le problème que j'ai, c'est que je ne peux pas obtenir pip pour installer psycopg2 (qui fait partie du tutoriel). Btw, voici un lien vers ce que j'essaie de faire (heroku article)

Donc, ce n'est pas un nouveau problème pour moi. Je n'ai jamais réussi à installer la machine via pip. Je reçois toujours le problème

Unable to find vcvarsall.bat

La façon dont je l'ai résolu dans le passé sur une machine windows était juste télécharger les libs pré-compilé. Si quelqu'un est intéressé et ne sait pas, vous pouvez trouver ces here! Btw, merci Christoph Gohlke pour le maintien de ces !!!!

Si vous recherchez cette erreur vcvarsall.bat, vous trouverez plusieurs articles sur Stackoverflow. Aucun d'entre eux m'a aidé. J'ai d'abord essayé de suivre la route MingGW. Après littéralement 2 nuits d'effort (et je pense avoir essayé toutes les suggestions que j'ai pu trouver), j'ai arrêté d'essayer (juste avant que j'aie jeté mon PC par la fenêtre et ai continué un saccage mortel de chaton). Donc, j'ai essayé l'autre voie que les gens suggèrent - qui est de télécharger l'édition VC++ 2008 Express de Microsoft. Apparemment, Python pour Windows est construit avec VC++ 2008 et pour certaines personnes c'est un chemin beaucoup plus facile que d'utiliser MinGW. Cela semble avoir fonctionné beaucoup mieux pour moi, parce que je peux au moins obtenir pip pour l'installer. Mais, quand j'essaie d'importer, j'obtiens un autre problème commun que les gens semblent avoir (au moins vous obtenez des coups quand vous le google).

File "C:\foo\bar\venv\lib\site-packages\psycopg2__init __.py", line 67, in from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID ImportError: DLL load failed: The operating system cannot run %1.

Après quelques recherches, il semble que cela est un problème avec le fichier compilé _psycopg.pyd en essayant de créer un lien dans libpq.dll. Ce fichier est dans C: \ Program Files (x86) \ PostgreSQL \ 9.1 \ bin \ - et c'est dans mon chemin.

Alors, est-ce que quelqu'un sait comment résoudre ce problème? Ou y a-t-il un moyen d'obtenir pyscopg2 qui est déjà installé avec succès (via les bibliothèques pré-construites) dans mes paquets-site? Note: Je peux faire disparaître le problème en copiant simplement mon paquetage psycopg2 dans les paquets de site de l'environnement virtuel. cela importera bien. Cependant, quand vous faites geler pip pour les exigences pour heroku, ce n'est pas là. Y a-t-il un moyen de tromper heroku à ce sujet?

Environnement est: Windows 7 (64 bits), Python 2.6.5, Django 1.3.1, virtualenv 1.6.4, PostgreSQL 9.1, pépin 1.0.2

Répondre

2

J'ai eu le même ensemble d'expériences.

J'ai remarqué que lorsque j'essaie de manage.py runserver sur une ancienne application, cela ne fonctionne pas dans virtualenv. Quand je cours python.exe manage.py runserver, cela fonctionne dans le virtualenv. Malheureusement, l'astuce ne semble pas fonctionner sur django-admin.py. J'obtiens l'erreur: python.exe: can't open file 'django-admin.py' [Errno 2] No such file or directory

Mais quand je démarre un interpréteur python et que j'importe du django, ça marche très bien.

Je ne sais pas si cela aide, mais je pensais que ça valait le coup.

1

J'ai eu le même problème que vous et j'ai essayé de résoudre le problème.

Après avoir utilisé Visual Basic 2008 pour résoudre mon « Impossible de trouver vcvarsall.bat » erreur

J'ai installé PostgreSQL (Pas besoin de charger quoi que ce soit de StackBuilder) et Heroku m'a finalement permis de déployer mon application Django sans problèmes . L'installation de PostgreSQL était une condition préalable pour le déploiement de votre application Django (et n'est généralement pas visible, mais elle est en haut de la même page)!

Espérons que cela vous a aidé à résoudre les problèmes similaires que vous pourriez rencontrer.

0

Je suis tombé sur tous les problèmes que vous avez mentionnés jusqu'à maintenant et j'essaie de garder un journal des raccourcis que je dois traverser pour écrire un article de blog dessus plus tard. Je pense que la dernière erreur que vous voyez peut être résolue en ajoutant simplement le répertoire bin Postgres à votre variable d'environnement Windows Path.

+1

installé si vous obtenez des erreurs ld PostgreSQL 32 bits Je suis sûr que ce sera apprécié par les personnes l'avenir. Je dois poster ce que j'ai finalement fait pour le résoudre. (qui était essentiellement d'abandonner). –

0

Assurez-vous:

Vos points distutils.cfg à MinGW
Vous avez sur libpq.dll

Questions connexes