Folding@Homeコントロールプログラムの名前はFAHControl
(ここからダウンロード)は、次のPythonエラーで始まらない。
$ FAHControl
Traceback (most recent call last):
File "/usr/bin/FAHControl", line 25, in <module>
from fah import FAHControl, load_fahcontrol_db
File "/usr/lib/python3/dist-packages/fah/__init__.py", line 25, in <module>
from . import util
File "/usr/lib/python3/dist-packages/fah/util/__init__.py", line 24, in <module>
from .OrderedDict import *
File "/usr/lib/python3/dist-packages/fah/util/OrderedDict.py", line 23, in <module>
from collections import MutableMapping as DictMixin
ImportError: cannot import name 'MutableMapping' from 'collections' (/usr/lib/python3.10/collections/__init__.py)
私はLinux Mint 21.3 Cinnamon(Ubuntu 22.04ベース)を使用しています。解決策はありますか?
答え1
何が起こり、いつ起こったのか
3.10+ Pythonバージョンでは変更されているようです。しかし、履歴に興味がなければ、解決策は実際には非常に簡単です。クラス、以下のソリューションに進んでください。
collections.abc
またはコンテナの抽象基本クラスバージョン3.3の新機能であるこのモジュールは、以前はモジュールの一部でしたcollections
。同じマニュアルのバージョン3.9では、この機能が使用されなくなった時期と、プログラマーがコードを調整する必要があるように削除された時期についての情報が見つかりました。
バージョン 3.3 以降は廃止され、バージョン 3.10 から削除されます。コレクション抽象基本クラスを collections.abc モジュールに移動しました。以前のバージョンとの互換性のために、Python 3.9のこのモジュールでは引き続き表示されます。
簡単な解決策
必要なテキストエディタを使用してルートで次のファイルを編集するだけです。
/usr/lib/python3/dist-packages/fah/util/OrderedDict.py
23行目を変更してください:
したがって、
from collections import MutableMapping as DictMixin
これに関して
from collections.abc import MutableMapping as DictMixin
保存してもう一度やり直してください。
FAHControl
今私の側から始めましょう。このソリューションは徹底的なテストを経て動作します(少なくとも私のシステムでは)。
FAHControlおよびFAHClient操作の一部のスクリーンショット(http://127.0.0.1:7396/):
FAHControl(拡大するにはクリック):
FAHClient(拡大するにはクリック):