繁体   English   中英

为什么在 pycharm 中安装 pygame 时出现此错误

[英]Why am I getting this error while installing pygame in pycharm

Command "python setup.py egg_info" failed with error code 1 in C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\

这是完整的过程

(venv) C:\Users\Eli Heist\PycharmProjects\Space Invaders Ultimate>pip install pygame
Collecting pygame
  Downloading https://files.pythonhosted.org/packages/c7/b8/06e02c7cca7aec915839927a9aa19f749ac17a3d2bb2610b945d2de0aa96/pygame-2.0.1.tar.gz (5.5MB)

    100% |████████████████████████████████| 5.5MB 996kB/s
    Complete output from command python setup.py egg_info:


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

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\setup.py", line 318, in <module>
        buildconfig.config.main(AUTO_CONFIG)
      File "C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\buildconfig\config.py", line 221, in main
        deps = CFG.main(**kwds)
      File "C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\buildconfig\config_win.py", line 574, in main
        return setup_prebuilt_sdl2(prebuilt_dir)
      File "C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\buildconfig\config_win.py", line 499, in setup_prebuilt_sdl2
        DEPS.configure()
      File "C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\buildconfig\config_win.py", line 336, in configure
        from . import vstools
      File "C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\buildconfig\vstools.py", line 11, in <module>
        compiler.initialize()
      File "C:\Users\Eli Heist\AppData\Local\Programs\Python\Python38\lib\distutils\msvc9compiler.py", line 372, in initialize
        vc_env = query_vcvarsall(VERSION, plat_spec)
      File "C:\Users\Eli Heist\PycharmProjects\Space Invaders Ultimate\venv\lib\site-packages\setuptools-40.8.0-py3.8.egg\setuptools\msvc.py", line
147, in msvc9_query_vcvarsall
      File "C:\Users\Eli Heist\PycharmProjects\Space Invaders Ultimate\venv\lib\site-packages\setuptools-40.8.0-py3.8.egg\setuptools\msvc.py", line
1227, in return_env
      File "C:\Users\Eli Heist\PycharmProjects\Space Invaders Ultimate\venv\lib\site-packages\setuptools-40.8.0-py3.8.egg\setuptools\msvc.py", line
876, in VCIncludes
      File "C:\Users\Eli Heist\PycharmProjects\Space Invaders Ultimate\venv\lib\site-packages\setuptools-40.8.0-py3.8.egg\setuptools\msvc.py", line
555, in VCInstallDir
    distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.2 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualst
udio.microsoft.com/downloads/
    Making dir :prebuilt_downloads:
    Downloading... https://www.libsdl.org/release/SDL2-devel-2.0.14-VC.zip 48d5dcd4a445410301f5575219cffb6de654edb8
    Unzipping :prebuilt_downloads\SDL2-devel-2.0.14-VC.zip:
    Downloading... https://www.libsdl.org/projects/SDL_image/release/SDL2_image-devel-2.0.5-VC.zip 137f86474691f4e12e76e07d58d5920c8d844d5b
    Unzipping :prebuilt_downloads\SDL2_image-devel-2.0.5-VC.zip:
    Downloading... https://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-devel-2.0.15-VC.zip 1436df41ebc47ac36e02ec9bda5699e80ff9bd27
    Unzipping :prebuilt_downloads\SDL2_ttf-devel-2.0.15-VC.zip:
    Downloading... https://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-devel-2.0.4-VC.zip 9097148f4529cf19f805ccd007618dec280f0ecc
    Unzipping :prebuilt_downloads\SDL2_mixer-devel-2.0.4-VC.zip:
    Downloading... https://www.ijg.org/files/jpegsr9d.zip ed10aa2b5a0fcfe74f8a6f7611aeb346b06a1f99
    Unzipping :prebuilt_downloads\jpegsr9d.zip:
    Downloading... https://pygame.org/ftp/prebuilt-x64-pygame-1.9.2-20150922.zip 3a5af3427b3aa13a0aaf5c4cb08daaed341613ed
    Unzipping :prebuilt_downloads\prebuilt-x64-pygame-1.9.2-20150922.zip:
    copying into .\prebuilt-x64
    Path for SDL: prebuilt-x64\SDL2-2.0.14
    ...Library directory for SDL: prebuilt-x64/SDL2-2.0.14/lib/x64
    ...Include directory for SDL: prebuilt-x64/SDL2-2.0.14/include
    Path for FONT: prebuilt-x64\SDL2_ttf-2.0.15
    ...Library directory for FONT: prebuilt-x64/SDL2_ttf-2.0.15/lib/x64
    ...Include directory for FONT: prebuilt-x64/SDL2_ttf-2.0.15/include
    Path for IMAGE: prebuilt-x64\SDL2_image-2.0.5
    ...Library directory for IMAGE: prebuilt-x64/SDL2_image-2.0.5/lib/x64
    ...Include directory for IMAGE: prebuilt-x64/SDL2_image-2.0.5/include
    Path for MIXER: prebuilt-x64\SDL2_mixer-2.0.4
    ...Library directory for MIXER: prebuilt-x64/SDL2_mixer-2.0.4/lib/x64
    ...Include directory for MIXER: prebuilt-x64/SDL2_mixer-2.0.4/include
    Path for PORTMIDI: prebuilt-x64
    ...Library directory for PORTMIDI: prebuilt-x64/lib
    ...Include directory for PORTMIDI: prebuilt-x64/include
    DLL for SDL2: prebuilt-x64/SDL2-2.0.14/lib/x64/SDL2.dll
    DLL for SDL2_ttf: prebuilt-x64/SDL2_ttf-2.0.15/lib/x64/SDL2_ttf.dll
    DLL for SDL2_image: prebuilt-x64/SDL2_image-2.0.5/lib/x64/SDL2_image.dll
    DLL for SDL2_mixer: prebuilt-x64/SDL2_mixer-2.0.4/lib/x64/SDL2_mixer.dll
    DLL for portmidi: prebuilt-x64/lib/portmidi.dll
    Path for FREETYPE not found.
    ...Found include dir but no library dir in prebuilt-x64.
    Path for PNG not found.
    ...Found include dir but no library dir in prebuilt-x64.
    Path for JPEG not found.
    ...Found include dir but no library dir in prebuilt-x64.
    DLL for freetype: prebuilt-x64/SDL2_ttf-2.0.15/lib/x64/libfreetype-6.dll

    ---
    For help with compilation see:
        https://www.pygame.org/wiki/CompileWindows
    To contribute to pygame development see:
        https://www.pygame.org/contribute.html
    ---


    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\Eli Heist\AppData\Local\Temp\pip-install-fjf50xi9\pygame\

今天我的朋友遇到了同样的问题。 好像pygame不适合python3.11.0,因为我可以通过python 3.10.7安装它,但不能通过python 3.11.0安装。所以你可以使用python3.10.7而不是python3.11.0来解决这个问题。

您看到此错误是因为pip正在尝试为 pygame 编译完整的SDL 库,而您的计算机缺少执行此操作的构建要求。 这是在您的错误消息中:

Microsoft Visual C++ 14.2 is required

幸运的是,pygame 为大多数操作系统提供了预编译的二进制文件,因此您不必自己编译。 它们以Python 车轮的形式分发。 访问预编译版本所需要做的就是安装wheel

C:\>pip install wheel
C:\>pip install pygame

我不确定如何解决这个问题,但我会尽力提供帮助。

尝试以下操作:

  1. 不要为该特定项目安装它。 尝试仅 go 到 cmd 并为您的整个 python 环境安装它。
  2. 确保 python 正确安装在 PATH 变量中。
  3. 尝试使用py -m pip install -U pygame --user代替。 如果这不起作用,请尝试python3 -m pip install -U pygame --user

如果您使用的是 python 3.8 和/或以上方法均无效,您有两个选择:恢复到 python 3.7 或等待 pygame 更新。 Pygame 在 python 3.8 中不正确地被 function 所知。 我遇到了同样的问题,我通过切换到 pygame 项目的 python 3.7 和其他 python 项目的最新版本来解决它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM