Как импортировать pygame в gitpod?

Это простое приложение SudokuSolver.

Проект на GitHub

Он работает отлично. Но когда я пытаюсь запустить его в gitpod, он не может импортировать pygame.

Error:
gitpod /workspace/SudokuVizualizationBacktracking $ /home/gitpod/.pyenv/versions/3.8.2/bin/python /workspace/SudokuVizualizationBacktracking/GUI.py
Traceback (most recent call last):
  File "/workspace/SudokuVizualizationBacktracking/GUI.py", line 1, in <module>
    import pygame
ModuleNotFoundError: No module named 'pygame'

Не могли бы вы мне помочь? Спасибо вам.


person deepak dash    schedule 05.06.2020    source источник
comment
Онлайн-среда IDE, скорее всего, не поддерживает локально сгенерированные контексты OpenGL. Просто догадка.   -  person Torxed    schedule 05.06.2020


Ответы (1)


В вашем .gitpod.yml вы настроили следующую задачу инициализации:

$ pip3 install -r requirements.txt

Начните свое рабочее пространство, открыв https://gitpod.io/#https://github.com/Deepak-dash007/SudokuVizualizationBacktracking и запустите эту команду в терминале. Вы получите следующий вывод:

$ pip3 install -r requirements.txt
Collecting pygame
  Downloading pygame-1.9.6.tar.gz (3.2 MB)
     |████████████████████████████████| 3.2 MB 6.8 MB/s 
    ERROR: Command errored out with exit status 1:
     command: /home/gitpod/.pyenv/versions/3.8.2/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-fgexue3e/pygame/setup.py'"'"'; __file__='"'"'/tmp/pip-install-fgexue3e/pygame/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-9lyba20o
         cwd: /tmp/pip-install-fgexue3e/pygame/
    Complete output (12 lines):


    WARNING, No "Setup" File Exists, Running "buildconfig/config.py"
    Using UNIX configuration...

    /bin/sh: 1: sdl-config: not found
    /bin/sh: 1: sdl-config: not found
    /bin/sh: 1: sdl-config: not found

    Hunting dependencies...
    WARNING: "sdl-config" failed!
    Unable to run "sdl-config". Please make sure a development version of SDL is installed.
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

Здесь вы можете видеть, что sdl-config отсутствует. Google нашел этот ответ Stack Overflow, в котором перечислены зависимости, необходимые для pygame: https://stackoverflow.com/a/60990677/1364435

Измените конфигурацию image в .gitpod.yml на:

image:
  file: .gitpod.Dockerfile

и добавил новый файл .gitpod.Dockerfile, который устанавливает зависимости, указанные в другом посте Stack Overflow:

FROM gitpod/workspace-full-vnc

RUN sudo apt-get update && sudo apt-get install -y \
    python-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libsmpeg-dev python-numpy subversion libportmidi-dev ffmpeg libswscale-dev libavformat-dev libavcodec-dev

Нажмите все и создайте новое рабочее пространство Gitpod. Вот и все.

Здесь вы найдете работающий репозиторий https://github.com/corneliusludmann/SudokuVizualizationBacktracking.

Я также создал для вас запрос на слияние: https://github.com/Deepak-dash007/SudokuVizualizationBacktracking/pull/1

person Cornelius    schedule 05.06.2020