memorandums

日々の作業ログです。

Mojaveでpygameを実行すると画面が真っ暗になる問題 → 解決

お急ぎの方は解決方法へ進んでください。

Amazonのprime readingで入手した以下の本で少し遊んでいました。

サンプルを1つ動かしてみたら。。。画面が真っ暗。え?

この本では、pygameというライブラリを使う前提で書かれています。

ちょっとぐぐると情報が出てきます。

日本語でトップには以下が表示されます。今年の4月だから4ヶ月前に書かれた記事ですね。
qiita.com

解決法は、その当時の最新版のpython3.7.3にアップしたらうまくいったという件のようです。

ちなみに、この作業をやる前にmacpython環境を整理していました。
memorandums.hatenablog.com

3.7.3を入れてみたけど。。。結果、変わらず。オイオイ。。。あちこちのサイトをみてsdlを利用しているらしかったので、sdlの関係ライブラリをbrewでインストールしたりしましたが。。。状況変わらず。

pygameのサンプルを以下で実行したけど、上記の記事と同様に、音はすれど。。。画面は真っ暗なまま。

python3 -m pygame.examples.aliens

ぐぐり続けると「brewpythonを入れると動かなくて、python本家から持ってくると動くぜ」という情報が出てきました。でも、せっかく環境整理したのに。。。また本家に戻るなんてありえません。

すると以下の記事に、minicondaってやつをいれるといいって書いてありました。miniconda?anacondaの親戚か?
www.programmersought.com


解決方法

macでMojaveでpyenvでpython環境を構築していることが前提になります。

その上で、minicondaの最新版を入れます。このときの最新版は「miniconda3-4.3.30」でしたので。。。

pyenv install miniconda3-4.3.30
pyenv global miniconda3-4.3.30
pip install pygame
python -m pygame.examples.aliens

で動きました😁

この情報も数カ月後には使えなくなるでしょう。。。自分が書いたコードが変化しなくても、マシン・OS・フレームワーク・ライブラリ・ツールが更新されることによって自然と死を迎えます。ITとはそういう性をもっていると思います。昨年、YCAMに観に行ったメディア・アートの死の展示を思い出します。ブルックスさんも言っていますね。。。

若い頃はこういう作業も、使いこなせている感がありましたが、今になるとなんだかなぁ。。。と思ったりします。他人様が作ったマシン・OS・フレームワーク・ライブラリ・ツールの上で遊んでいるのですから。。。しかたがありません。