Wie installiere ich Pygame in virtualenv?


9

In installiert python-virtualenv, weil diese Frage besagte, ich sollte virtualenv verwenden, um pygame zu installieren. Ich bin mir jedoch nicht sicher, wie das erreicht wird.

Was ich getan habe (gemäß diesen Anweisungen ):

virtualenv --no-site-packages --distribute -p /usr/bin/python3.3 ~/.virtualenvs/pywork3 --no-pip

Und dann weiß ich nicht, wohin ich gehen soll.

Wie installiere ich Pygame, um es in der virtuellen Umgebung zu verwenden?

Bearbeiten: Ich habe die Anweisungen von GuySoft befolgt und alles großartig installiert. Beim Versuch import pygamein Python3 wurde jedoch der folgende Fehler angezeigt:

>>> import pygame
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/alden/.virtualenvs/pywork3/lib/python3.3/site-packages/pygame/__init__.py", line 95, in <module>
from pygame.base import *
ImportError: /home/alden/.virtualenvs/pywork3/lib/python3.3/site-packages/pygame/base.cpython-33m.so: undefined symbol: PyCObject_Check

1
src/pygame.h:75:20: fatal error: Python.h: No such file or directorySie benötigen wahrscheinlich die Python-Entwicklungsdateien.
Timo

Ja, gleich zu Beginn des Protokolls habe ich nicht bemerkt, dass es vor fehlenden Abhängigkeiten (einschließlich python3.3-dev) gewarnt hat. Deshalb habe ich die Liste im Pygame-Wiki gefunden und installiere sie gerade.
DaimyoKirby

@ Timo Ich habe alle empfohlenen Abhängigkeiten installiert , aber mir fehlt immer noch die JPEG-Abhängigkeit. Weißt du was das wäre?
DaimyoKirby

Antworten:


12

Ich schlage vor, Sie haben Pip in Ihrem Virualenv, es ist nützlich.

Hinweis: muss pygame die Abhängigkeiten installiert haben, können Sie herausfinden, was sie sind , und installieren Sie sie mit:

sudo apt-get build-dep python-pygame

Dann versuchen Sie Folgendes:

rm -rf ~/.virtualenvs/pywork3 #clean what you have there
mkdir -p ~/.virtualenvs/pywork3
virtualenv --no-site-packages --distribute -p /usr/bin/python3.3 ~/.virtualenvs/pywork3
. ~/.virtualenvs/pywork3/bin/activate
pip install pygame

Habe

Nachdem ich das Quellcode-Repository hinzugefügt hatte, wurde alles einwandfrei installiert. Beim Versuch, Pygame zu importieren, das ich dem OP hinzugefügt habe, ist jedoch ein anderer Fehler aufgetreten.
DaimyoKirby

Das ist ein anderes Thema. Pygame auf Python 3 ist experimentell. Befolgen Sie diese Anweisungen (auch bekannt als Download der neuesten Version aus dem Quellcode, und bestätigen Sie, dass Sie tatsächlich alle Anforderungen erfüllen).
GuySoft

Ok, werde das überprüfen. Ich kontaktierte auch den Verfasser des Buches, um ihn danach zu fragen. Danke für die Hilfe!
DaimyoKirby

Das scheint nicht mehr zu funktionieren. Pygame ist nicht in den Python-Paketen repositroy.
Ben Davis

1

das funktioniert bei mir problemlos:

sudo apt-get build-dep python-pygame

als:

pip install hg+http://bitbucket.org/pygame/pygame

Traurig zu berichten, dass dies in Ubuntu 15.10 nicht mehr funktioniert. Die Pip-Installation hängt einfach. Beim Versuch, mit "pip -e" herunterzuladen und zu installieren, werden fehlende Bibliotheken angezeigt, was dazu führen kann, dass pip stillschweigend fehlschlägt.
Lysdexie

Ich wurde gezwungen, die übliche "Python ./setup.py-Installation" durchzuführen und dann die Ergebnisse auf meine virtuelle Umgebung zu kopieren.
Lysdexie

1

Ich habe festgestellt, dass Pygame unter Ubuntu 15.10 nicht in einer virtuellen Umgebung installiert werden kann.

Das Problem sind fehlende Links zu libswscale und libavformat.

Auf meinem System habe ich die folgenden Symlinks hinzugefügt:

$ sudo ln -sf /usr/include/x86_64-linux-gnu/libswscale /usr/include/libswscale
$ sudo ln -sf /usr/include/x86_64-linux-gnu/libavformat /usr/include/libavformat

Zu diesem Zeitpunkt konnte ich dem http://pygame.org/wiki/CompileUbuntu#Installing Pygame mit Pip- Anweisungen folgen . Ich schwebe jetzt in einem Ball aus klarem Licht.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.