1 votes

iTerm2 Python scripting sur M1/M2 (Apple Sillicon)

ITerm2 peut être scripté avec Python

Lorsque j'exécute Python REPL ou Python script via le menu Scripting d'iTerm2 sur l'architecture Apple Sillicon (M2 dans mon cas), il se termine avec l'erreur suivante :

Bad CPU type

comme dans l'exemple suivant :

2-3, 2:43:17.371 PM: /opt/homebrew/bin/zsh -c /Applications/iTerm.app/Contents/Resources/it2\_api\_wrapper.sh /Users/zxaos/.config/iterm2/AppSupport/iterm2env-3.7/versions/3.7.9/bin/python3 /Users/zxaos/.config/iterm2/AppSupport/Scripts/AutoLaunch/iTerm-DarkLight.py
12-3, 2:43:17.381 PM: + unset PYTHONPATH
12-3, 2:43:17.381 PM: + export PYTHONUNBUFFERED=1
12-3, 2:43:17.381 PM: + PYTHONUNBUFFERED=1
12-3, 2:43:17.381 PM: + /Users/zxaos/.config/iterm2/AppSupport/iterm2env-3.7/versions/3.7.9/bin/python3 /Users/zxaos/.config/iterm2/AppSupport/Scripts/AutoLaunch/iTerm-DarkLight.py
12-3, 2:43:17.381 PM: /Applications/iTerm.app/Contents/Resources/it2\_api\_wrapper.sh: line 6: /Users/zxaos/.config/iterm2/AppSupport/iterm2env-3.7/versions/3.7.9/bin/python3: Bad CPU type in executable
12-3, 2:43:17.382 PM: 
12-3, 2:43:17.382 PM: \*\* Script exited with status 126 \*\*

Comment résoudre le problème ?

0voto

Michal Bernhard Points 139

Le problème est que Python fourni avec iTerm2 est sur une architecture CPU x86, mais vous avez un CPU ARM (Apple Sillicon ou architecture aarm64). Vous n'avez probablement pas Rosetta2 (émulation Intel x86) installés.

  1. Ouvrir "Terminal".
  2. Type softwareupdate --install-rosetta --agree-to-license
  3. Exécuter ( Enter )

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X