Como instalo o Pygame no virtualenv?

10

No instalado python-virtualenv, porque esta pergunta dizia que eu deveria usar o virtualenv para instalar o pygame. No entanto, não tenho muita certeza de como isso é realizado.

O que fiz (seguindo estas instruções ):

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

E então eu não sei para onde ir.

Como instalo o pygame para ser usado no virtualenv?

Edit: Eu segui as instruções da GuySoft, e tudo foi ótimo. No entanto, quando tentei import pygameem python3, recebi o seguinte erro:

>>> 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
fonte
11
src/pygame.h:75:20: fatal error: Python.h: No such file or directoryVocê provavelmente precisa dos arquivos de desenvolvimento Python.
Timo
Sim, bem no começo do log, não notei que ele avisava sobre dependências ausentes (incluindo python3.3-dev), então encontrei a lista no wiki do pygame e estou instalando-as agora.
DaimyoKirby
@Timo Instalei todas as dependências recomendadas , mas ainda estou com falta da dependência de jpeg. Você sabe o que seria isso?
DaimyoKirby

Respostas:

13

Eu sugiro que você tenha pip em seu virualenv, é útil.

Nota: deve ter as dependências do pygame instaladas, você pode descobrir o que são e instalá-las com:

sudo apt-get build-dep python-pygame

Então tente o seguinte:

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
fonte
Acabou de adicionar um passo importante, testado e isso deve funcionar :)
GuySoft
Depois de adicionar o repositório de código-fonte, tudo foi instalado corretamente; no entanto, encontrei outro erro ao tentar importar o pygame, que adicionei ao OP.
DaimyoKirby
Essa é uma questão diferente. Pygame no python 3 é experimental. Tente seguir estas instruções (ou seja, baixe da fonte a versão mais recente e confirme que você realmente possui todos os requisitos).
GuySoft 30/05
Ok, vamos verificar isso. Também entrei em contato com o escritor do livro para perguntar sobre isso. Obrigado pela ajuda!
DaimyoKirby
Isso parece não funcionar mais. pygame não está no repositório de pacotes python.
Ben Davis
1

que está funcionando para mim sem problemas:

sudo apt-get build-dep python-pygame

do que:

pip install hg+http://bitbucket.org/pygame/pygame
ThePhi
fonte
É triste relatar que isso deixou de funcionar no ubuntu 15.10. A instalação do pip simplesmente trava. A tentativa de baixar e instalar usando "pip -e" mostra as bibliotecas ausentes, o que pode estar causando a falha silenciosa do pip.
Lysdexia
Fui forçado a usar a "instalação python ./setup.py" usual e depois copiar os resultados para o meu virtualenv.
Lysdexia
1

Eu descobri que o pygame não será instalado em um virtualenv no ubuntu 15.10.

O problema está faltando links para libswscale e libavformat.

No meu sistema, adicionei os seguintes links simbólicos:

$ 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

Nesse ponto, eu pude seguir o http://pygame.org/wiki/CompileUbuntu#Installing pygame com instruções de pip . Agora estou levitando em uma bola de luz clara.

lisdexia
fonte