Jak zainstalować Pygame w virtualenv?

11

Zainstalowano python-virtualenv, ponieważ to pytanie mówiło, że powinienem użyć virtualenv do zainstalowania gry pygame. Jednak nie jestem pewien, jak to się stało.

Co zrobiłem (postępując zgodnie z tymi instrukcjami ):

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

A potem nie wiem gdzie iść.

Jak zainstalować grę pygame do użytku w virtualenv?

Edycja: Postępowałem zgodnie z instrukcjami GuySoft i wszystko instalowało się świetnie. Jednak gdy próbowałem import pygamew Python3, otrzymałem następujący błąd:

>>> 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
DaimyoKirby
źródło
1
src/pygame.h:75:20: fatal error: Python.h: No such file or directoryPrawdopodobnie potrzebujesz plików programistycznych w języku Python.
Timo,
Tak, na początku dziennika nie zauważyłem, że ostrzegał o brakujących zależnościach (w tym python3.3-dev), więc znalazłem listę na wiki pygame i instaluję je teraz.
DaimyoKirby
@ Timo Zainstalowałem wszystkie zalecane zależności , ale wciąż brakuje mi zależności JPEG. Czy wiesz co to byłoby?
DaimyoKirby

Odpowiedzi:

14

Sugeruję, że masz pip w swoim virualenv, jest to przydatne.

Uwaga: musisz mieć zainstalowane zależności gry, możesz dowiedzieć się, jakie są i zainstalować je za pomocą:

sudo apt-get build-dep python-pygame

Następnie spróbuj tego:

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
GuySoft
źródło
Właśnie dodałem ważny krok, przetestowany i to powinno działać :)
GuySoft
Po dodaniu repozytorium kodu źródłowego wszystko zostało zainstalowane poprawnie; natknąłem się jednak na inny błąd, gdy próbowałem zaimportować grę pygame, którą dodałem do PO.
DaimyoKirby
To inny problem. Pygame na python 3 jest empiryczna. Spróbuj postępować zgodnie z tymi instrukcjami (czyli pobierz ze źródła najnowszą wersję i potwierdź, że rzeczywiście spełniasz wszystkie wymagania).
GuySoft
Ok, to sprawdzę. Skontaktowałem się również z autorem książki, aby go o to zapytać. Dzięki za pomoc!
DaimyoKirby
To już nie działa. pygame nie znajduje się w repozytorium pakietów python.
Ben Davis,
1

to działa dla mnie bez problemu:

sudo apt-get build-dep python-pygame

niż:

pip install hg+http://bitbucket.org/pygame/pygame
ThePhi
źródło
Z przykrością informuję, że przestało to działać w Ubuntu 15.10. Instalacja pip po prostu się zawiesza. Próba pobrania i zainstalowania przy użyciu „pip -e” pokazuje brak bibliotek, co może powodować cichą awarię pip.
lysdexia,
Zostałem zmuszony do zwykłej instalacji „Python ./setup.py”, a następnie skopiowałem wyniki do mojej virtualenv.
lysdexia,
1

Przekonałem się, że pygame nie będzie instalował się w virtualenv na Ubuntu 15.10.

Problemem jest brak linków do libswscale i libavformat.

W moim systemie dodałem następujące dowiązania symboliczne:

$ 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

W tym momencie mogłem śledzić http://pygame.org/wiki/CompileUbuntu#Installing pygame z instrukcjami pip . Lewituję teraz w kuli czystego światła.

lysdeksja
źródło