pygame のインストール
〜 CentOS8 版 〜
2020-10-30 作成 福島
TOP > tips > pygame-centos
1. python のバージョンを確認
$ python3 --version

Python 3.6.8
2. pip で pygame をインストール
$ su
# python3 -m pip install pygame
# exit
3. pygame のバージョンと格納ディレクトリを確認
$ python3 -c "import pygame; print(pygame.__file__)"

pygame 2.0.0 (SDL 2.0.12, python 3.6.8)
Hello from the pygame community. https://www.pygame.org/contribute.html
/usr/local/lib64/python3.6/site-packages/pygame/__init__.py
※太字部分が pygame の格納ディレクトリ。
※注意: 実際の表示は太字になりません。
4. pygame のサンプルプログラムを確認
$ ls -l /usr/local/lib64/python3.6/site-packages/pygame/examples/
(上記 3 で確認した格納ディレクトリ + "examples/" を指定する)

合計 288
-rw-r--r--. 1 root root  4429 10月 30 13:30 README.rst
-rw-r--r--. 1 root root     0 10月 30 13:30 __init__.py
drwxr-xr-x. 2 root root  4096 10月 30 13:30 __pycache__
-rw-r--r--. 1 root root  1062 10月 30 13:30 aacircle.py
-rw-r--r--. 1 root root 12127 10月 30 13:30 aliens.py
-rw-r--r--. 1 root root  3616 10月 30 13:30 arraydemo.py
-rw-r--r--. 1 root root  1718 10月 30 13:30 audiocapture.py
-rw-r--r--. 1 root root  3425 10月 30 13:30 blend_fill.py
-rw-r--r--. 1 root root  6345 10月 30 13:30 blit_blends.py
-rw-r--r--. 1 root root  2987 10月 30 13:30 camera.py
-rw-r--r--. 1 root root  5931 10月 30 13:30 chimp.py
-rw-r--r--. 1 root root  2879 10月 30 13:30 cursors.py
drwxr-xr-x. 2 root root  4096 10月 30 13:30 data
-rw-r--r--. 1 root root  2240 10月 30 13:30 dropevent.py
-rw-r--r--. 1 root root  5399 10月 30 13:30 eventlist.py
-rw-r--r--. 1 root root  2410 10月 30 13:30 fastevents.py
-rw-r--r--. 1 root root  9617 10月 30 13:30 font_viewer.py
-rw-r--r--. 1 root root  2437 10月 30 13:30 fonty.py
-rw-r--r--. 1 root root  4186 10月 30 13:30 freetype_misc.py
-rw-r--r--. 1 root root 16846 10月 30 13:30 glcube.py
-rw-r--r--. 1 root root  1301 10月 30 13:30 headless_no_windows_needed.py
-rw-r--r--. 1 root root  2527 10月 30 13:30 liquid.py
-rw-r--r--. 1 root root  5867 10月 30 13:30 mask.py
-rw-r--r--. 1 root root 29424 10月 30 13:30 midi.py
-rw-r--r--. 1 root root  1810 10月 30 13:30 moveit.py
-rw-r--r--. 1 root root  9006 10月 30 13:30 music_drop_fade.py
-rw-r--r--. 1 root root  1646 10月 30 13:30 overlay.py
-rw-r--r--. 1 root root  3450 10月 30 13:30 pixelarray.py
-rw-r--r--. 1 root root  4544 10月 30 13:30 playmus.py
-rw-r--r--. 1 root root  2478 10月 30 13:30 prevent_display_stretching.py
-rw-r--r--. 1 root root  1086 10月 30 13:30 resizing_new.py
-rw-r--r--. 1 root root  4852 10月 30 13:30 scaletest.py
-rw-r--r--. 1 root root  3101 10月 30 13:30 scrap_clipboard.py
-rw-r--r--. 1 root root  6571 10月 30 13:30 scroll.py
-rw-r--r--. 1 root root  1774 10月 30 13:30 setmodescale.py
-rw-r--r--. 1 root root  1158 10月 30 13:30 sound.py
-rw-r--r--. 1 root root  5814 10月 30 13:30 sound_array_demos.py
-rw-r--r--. 1 root root  2505 10月 30 13:30 sprite_texture.py
-rw-r--r--. 1 root root  2748 10月 30 13:30 stars.py
-rw-r--r--. 1 root root  7037 10月 30 13:30 testsprite.py
-rw-r--r--. 1 root root  5450 10月 30 13:30 textinput.py
-rw-r--r--. 1 root root  3262 10月 30 13:30 vgrade.py
-rw-r--r--. 1 root root  4497 10月 30 13:30 video.py
5. pygame のサンプルプログラムを実行
pygame のサンプルプログラム (プログラム) は、必ず GUI 画面から実行すること。
GUI 画面ではないテキストターミナルから実行した例: (失敗例)
pygame 2.0.0 (SDL 2.0.12, python 3.6.8)
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
  File "/usr/lib64/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib64/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/usr/local/lib64/python3.6/site-packages/pygame/examples/aliens.py", line 410, in 
    main()
  File "/usr/local/lib64/python3.6/site-packages/pygame/examples/aliens.py", line 252, in main
    bestdepth = pg.display.mode_ok(SCREENRECT.size, winstyle, 32)
pygame.error: video system not initialized
※ video system (グラフィック画面) が使えないというエラーで終了している
上記 4 のサンプルプログラムの中から eventlist.py を実行する。
$ python3 -m pygame.examples.eventlist
この実行画面でマウスを動かしたり、キーを押したりすると「Status Area」中の文字が変化し、
その時何が起きているか「Event History Area」に表示される。