首页 > 解决方案 > 如何在 gitpod 中导入 pygame?

问题描述

这是一个简单的 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'

你能帮帮我吗?感谢您。

标签: pythonpygamegitpod

解决方案


在您.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丢失了。谷歌找到了这个 Stack Overflow 答案,列出了所需的依赖项pygamehttps ://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 工作区。而已。

你会在这里找到一个正在运行的 repo https://github.com/corneliusludmann/SudokuVizualizationBacktracking

我还为您创建了一个拉取请求:https ://github.com/Deepak-dash007/SudokuVizualizationBacktracking/pull/1


推荐阅读