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(확대하려면 클릭):