2012-07-17 6 views
3

J'essaye de faire fonctionner django en utilisant pypy. J'ai tout configuré et fonctionne très bien sous python2.7 et python3.2 n'est pas installé. Je me suis alors installé pypy et a tenté de lancer django:Django (ou autre paquet pip) dans PyPy

Traceback (most recent call last): 
    File "app_main.py", line 51, in run_toplevel 
    File "manage.py", line 8, in <module> 
    from django.core.management import execute_from_command_line 
ImportError: No module named django 

J'ai remarqué que pypy a créé son propre dossier site-packages, alors j'ai enlevé cela et fait un lien symbolique dans le dossier site-packages dans l'installation de python2.7. Cela n'a pas changé. J'ai également remarqué que ce n'est pas seulement un problème de django, tout paquet pip installé ne fonctionne pas.

chemin python2.7:

['', '/usr/lib/python27.zip', 
'/usr/lib/python2.7', 
'/usr/lib/python2.7/plat-linux2', 
'/usr/lib/python2.7/lib-tk', 
'/usr/lib/python2.7/lib-old', 
'/usr/lib/python2.7/lib-dynload', 
'/usr/lib/python2.7/site-packages', 
'/usr/lib/python2.7/site-packages/setuptools-0.6c11.egg-info'] 

chemin pypy

['', '/opt/pypy/lib_pypy/__extensions__', 
'/opt/pypy/lib_pypy', 
'/opt/pypy/lib-python/2.7', 
'/opt/pypy/lib-python/2.7/lib-tk', 
'/opt/pypy/lib-python/2.7/plat-linux2'] 

Quelqu'un at-il une expérience avec cela? Les liens symboliques sont-ils autorisés dans cette situation? Sinon, y a-t-il autre chose qui est utilisé à la place? J'ai également essayé de copier le dossier django dans le dossier site-packages avant de le supprimer, mais cela n'a pas réussi non plus. Merci

Répondre

3

Vous voulez vraiment créer un environnement autonome pour votre application Web. Je suggère d'utiliser buildout ou virtualenv. La gestion des paquets de site système vous mordra à chaque fois.

Bonne chance!

+0

L'utilisation de virtualenv nécessitera-t-elle de tout réinstaller, ou est-ce que je vois ce que j'ai déjà et que je fais la configuration pour moi? – tgrosinger

+0

J'utilise personnellement buildout. Vous pouvez indiquer à buildout d'utiliser des packages du répertoire de packages de site système, s'ils sont disponibles, ou d'ignorer tous les packages de site système. Je crois que virtualenv peut faire la même chose. Ce faisant, je rate tout le point, même si je crois - il est préférable de supposer que vous n'obtenez rien du système hôte. Cela rendra le déploiement plus facile. – Erik

+1

D'accord, je vais essayer. Je vous remercie – tgrosinger

Questions connexes