לא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי
-
@yossiz משהו מוזר, בעיקרון מותקן לי פייתון 3.12, אבל היום כשאני ניסיתי להכניס את הפקודה
python3 --version
אוpython --version
נכתב לי
Python 3.10.12וכשאני מנסה להתקין עם
sudo apt install python3.12
אני מקבל
python3.12 is already the newest version (3.12.0~rc1-1+jammy1).
אז מה קורה פה? יש לי 3.10.12 או 3.12?
פשוט ניסיתי להתקין את זה וקיבלתי שגיאה, ובחיפוש באינטרנט ראיתי שזה קשור לגירסת פייתון-שהיא צריכה להיות 3.11 ומעלה, ואז בדקתי וראיתי שאכן יש לי רק 3.10.12...מה עושים?
-
@ששא גם 3.10 וגם 3.12 מותקנים לך
אפשרות אחת שזה נמצא תחת שם אחר, אפשר למצוא אותו עם הטאב, תקלידpython
ופעמיים טאב ותראה איזה השלמות אתה מקבל
אפשרות נוספת ששניהם תחת אותו שם ואחד גובר על חבירו, אפשר לראות את זה עם הפלט שלwhich python3 -a
אפשרות שלישית (פחות סבירה) הוא שהפייתון גורסת 3.12 לא נמצא בכלל ב-PATH
ואז תצטרך לחפש אותו -
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
תקליד python ופעמיים טאב ותראה איזה השלמות אתה מקבל
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
אפשר לראות את זה עם הפלט של which python3 -a
מה יוצא לפי הנ"ל?
תודה רבה רבה לך!
-
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
@ששא נסה כך:
python3.12 -m pip install homeassistant==2023.8.4
אני מקבל
root@DESKTOP-20ILMT9:~# python3.12 -m pip install homeassistant==2023.8.4 Traceback (most recent call last): File "<frozen runpy>", line 198, in _run_module_as_main File "<frozen runpy>", line 88, in _run_code File "/usr/lib/python3/dist-packages/pip/__main__.py", line 29, in <module> from pip._internal.cli.main import main as _main File "/usr/lib/python3/dist-packages/pip/_internal/cli/main.py", line 9, in <module> from pip._internal.cli.autocompletion import autocomplete File "/usr/lib/python3/dist-packages/pip/_internal/cli/autocompletion.py", line 10, in <module> from pip._internal.cli.main_parser import create_main_parser File "/usr/lib/python3/dist-packages/pip/_internal/cli/main_parser.py", line 8, in <module> from pip._internal.cli import cmdoptions File "/usr/lib/python3/dist-packages/pip/_internal/cli/cmdoptions.py", line 23, in <module> from pip._internal.cli.parser import ConfigOptionParser File "/usr/lib/python3/dist-packages/pip/_internal/cli/parser.py", line 12, in <module> from pip._internal.configuration import Configuration, ConfigurationError File "/usr/lib/python3/dist-packages/pip/_internal/configuration.py", line 26, in <module> from pip._internal.utils.logging import getLogger File "/usr/lib/python3/dist-packages/pip/_internal/utils/logging.py", line 27, in <module> from pip._internal.utils.misc import ensure_dir File "/usr/lib/python3/dist-packages/pip/_internal/utils/misc.py", line 39, in <module> from pip._internal.locations import get_major_minor_version File "/usr/lib/python3/dist-packages/pip/_internal/locations/__init__.py", line 14, in <module> from . import _distutils, _sysconfig File "/usr/lib/python3/dist-packages/pip/_internal/locations/_distutils.py", line 9, in <module> from distutils.cmd import Command as DistutilsCommand ModuleNotFoundError: No module named 'distutils'
-
-
@ששא כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
השאלה האם אין כזה דבר אולי למחוק את 3.10 כך שיישאר רק 3.12 וזהו? או אולי להגדיר שברירת המחדל תהיה ה 3.12?
זה לא יעזור לבעיה שלך
אני לא יודע מה הפתרון
עבור גירסאות קודמות של פייתון יש חבילה בשם
python3.1x-distutils
נראה לי שעבור 3.12 אין כזו חבילה, לפחות לא מצאתי אותה פה: https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa/+packagesנסה להריץ
sudo apt install python3.12-distutils
אם זה לא עובד אני לא יודע מה הפתרון. תוכל לנסות לשאול פה: https://github.com/deadsnakes/issuesאו לבנות מקוד מקור כמו שמבואר פה אפשרות 2 (הבאת למעלה ואני המלצתי נגד...)
אגב, יש שם הוראות איך להגדיר את 3.12 כגירסה ברירת מחדל (תחת הכותרת Set Python 3.12 as default)
-
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
נסה להריץ sudo apt install python3.12-distutils
ניסיתי ככה ואז ניסיתי
python3.12 -m pip install homeassistant==2023.8.4
והיה לי תגובה אחרת מכל פעםDefaulting to user installation because normal site-packages is not writeable ERROR: Exception: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 165, in exc_logging_wrapper status = run_func(*args) ^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 205, in wrapper return func(self, options, args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/commands/install.py", line 285, in run session = self.get_default_session(options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 75, in get_default_session self._session = self.enter_context(self._build_session(options)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 89, in _build_session session = PipSession( ^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/network/session.py", line 282, in __init__ self.headers["User-Agent"] = user_agent() ^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/network/session.py", line 157, in user_agent setuptools_dist = get_default_environment().get_distribution("setuptools") ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/metadata/__init__.py", line 24, in get_default_environment from .pkg_resources import Environment File "/usr/lib/python3/dist-packages/pip/_internal/metadata/pkg_resources.py", line 9, in <module> from pip._vendor import pkg_resources File "/usr/lib/python3/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2164, in <module> register_finder(pkgutil.ImpImporter, find_on_path) ^^^^^^^^^^^^^^^^^^^ AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?
אתה מבין מה כתוב פה?
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
זה לא יעזור לבעיה שלך
למה לא? הבעיה אצלי היא שהוא כל פעם רץ ל 3.10, אז אם לא יהיה 3.10 זה אמור לעזור, לא?
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
עבור גירסאות קודמות של פייתון יש חבילה בשם python3.1x-distutils
שמה היא עושה?
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
או לבנות מקוד מקור כמו שמבואר פה אפשרות 2
ואז מה זה יועיל?
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
אגב, יש שם הוראות איך להגדיר את 3.12 כגירסה ברירת מחדל
הגדרה כברירת מחדל כן אמורה להועיל?
-
@ששא כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
אתה מבין מה כתוב פה?
נראה לי שצריך לעדכן גירסת
pip
python3.12 -m pip install -–upgrade pip
@ששא כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
למה לא? הבעיה אצלי היא שהוא כל פעם רץ ל 3.10, אז אם לא יהיה 3.10 זה אמור לעזור, לא?
לא זו הבעיה (לענ"ד), הבעיה היא לגרום לפייתון 3.12 להצליח להריץ את הפקודות
@ששא כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
הגדרה כברירת מחדל כן אמורה להועיל?
לא, כנ"ל
@ששא כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
פשוט ניסיתי להתקין את זה וקיבלתי שגיאה, ובחיפוש באינטרנט ראיתי שזה קשור לגירסת פייתון-שהיא צריכה להיות 3.11 ומעלה
נראה לי שיקל עליך אם תתקין 3.11 במקום 3.12, הבעיה האחרונה למשל לא היה קורה ב-3.11 לפי המבואר פה
-
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
נראה לי שצריך לעדכן גירסת pip
python3.12 -m pip install -–upgrade pip
אני מקבל
Usage: /usr/bin/python3.12 -m pip install [options] <requirement specifier> [package-index-options] ... /usr/bin/python3.12 -m pip install [options] -r <requirements file> [package-index-options] ... /usr/bin/python3.12 -m pip install [options] [-e] <vcs project url> ... /usr/bin/python3.12 -m pip install [options] [-e] <local project path> ... /usr/bin/python3.12 -m pip install [options] <archive url/path> ... no such option: -–
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
נראה לי שיקל עליך אם תתקין 3.11 במקום 3.12, הבעיה האחרונה למשל לא היה קורה ב-3.11 לפי המבואר פה
בקיצר, אז להתקין 3.11 וזהו?
איך? למחוק את מה שיש או להתקין על זה?
ואם להתקין על זה, אז לא יהיה בעיות בגלל שיש כבר 3.10 ו 3.12?ומחיקת כל המערכת והתקנה מחדש עם התקנת פייתון 3.11 תעזור או שלא כ"כ?
תודה רבה רבה לך על העזרה הנדיבה!
-
@ששא כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
אני מקבל
Usage: /usr/bin/python3.12 -m pip install [options] <requirement specifier> [package-index-options] ... /usr/bin/python3.12 -m pip install [options] -r <requirements file> [package-index-options] ... /usr/bin/python3.12 -m pip install [options] [-e] <vcs project url> ... /usr/bin/python3.12 -m pip install [options] [-e] <local project path> ... /usr/bin/python3.12 -m pip install [options] <archive url/path> ... no such option: -–
היה תו יוניקוד מוזר בפקודה שהבאתי (העתקתי אותה...)
הפקודה המתוקנת:python3.12 -m pip install --upgrade pip
@ששא כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
בקיצר, אז להתקין 3.11 וזהו?
אם לא עוזר לך הפקודה המתוקנת הנ"ל אז כן, אני ממליץ שתנסה עם 3.11
לא צריך למחוק מה שיש, פשוט לעשות את כל ההוראות עם שינוי 3.12 ל-3.11 -
@yossiz כתב בלא מצליח להתקין פייתון 3.12 על WSL (לינוקס וירטואלי בווינדוס) על המחשב שלי:
הפקודה המתוקנת:
python3.12 -m pip install --upgrade pip
(homeassistant) homeassistant@DESKTOP-20ILMT9:/srv/homeassistant$ python3.12 -m pip install --upgrade pip Defaulting to user installation because normal site-packages is not writeable ERROR: Exception: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 165, in exc_logging_wrapper status = run_func(*args) ^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 205, in wrapper return func(self, options, args) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/commands/install.py", line 285, in run session = self.get_default_session(options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 75, in get_default_session self._session = self.enter_context(self._build_session(options)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 89, in _build_session session = PipSession( ^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/network/session.py", line 282, in __init__ self.headers["User-Agent"] = user_agent() ^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/network/session.py", line 157, in user_agent setuptools_dist = get_default_environment().get_distribution("setuptools") ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/pip/_internal/metadata/__init__.py", line 24, in get_default_environment from .pkg_resources import Environment File "/usr/lib/python3/dist-packages/pip/_internal/metadata/pkg_resources.py", line 9, in <module> from pip._vendor import pkg_resources File "/usr/lib/python3/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 2164, in <module> register_finder(pkgutil.ImpImporter, find_on_path) ^^^^^^^^^^^^^^^^^^^ AttributeError: module 'pkgutil' has no attribute 'ImpImporter'. Did you mean: 'zipimporter'?