Ich hatte vim
mit HomeBrew auf Version 7.4.1952 auf OS X 10.11.6 aktualisiert. Es installierte Python 2 als Abhängigkeitspaket (Zusammengefasste Teile der Ausgabe werden durch angezeigt ...
):
$ brew upgrade vim
...
==> Installing vim dependency: python
🍺 /usr/local/Cellar/python/2.7.11: 4,949 files, 66.6M
...
Wenn ich jetzt versuche zu starten lldb
, erzeugt es ImportError und NameErrors:
$ lldb myExecutableFile
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Resources/Python/lldb/__init__.py", line 98, in <module>
import six
ImportError: No module named six
(lldb) target create "myExecutableFile"
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'run_one_line' is not defined
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'run_one_line' is not defined
...
Current executable set to 'myExecutableFile' (x86_64).
(lldb)
Dies ist meine $PATH
in zsh-Shell:
/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
Wie kann ich diese Fehler beheben?
Ich habe six
das Modul mit pip
dem Python-Paketmanager installiert und es löst das Problem:
$ pip install six
Collecting six
Using cached six-1.10.0-py2.py3-none-any.whl
Installing collected packages: six
Successfully installed six-1.10.0
$ lldb myExecutableFile
(lldb) target create "myExecutableFile"
Current executable set to 'myExecutableFile' (x86_64).
(lldb)
Der Apple lldb
(von /usr/bin/lldb
) erwartet und verlangt /usr/bin/python
. Leider verwendet es nicht diesen absoluten Pfad, um es aufzurufen, sondern nur python
.
Mit einem ebenfalls von Homebrew installierten Python 2, /usr/local/bin
das sich vor Ihrem Apple befindet, erhält PATH
Apple lldb
daher ein unerwartetes Python 2, das Fehler wie fehlende erwartete Pakete oder Schlimmeres verursachen kann.
lldb
Das Sichere ist also , mit einem anderen anzurufen PATH
:
$ PATH=/usr/bin:$PATH lldb ...
Oder konfigurieren Sie sogar ein Alias- oder Wrapper-Skript, z.
$ alias lldb='PATH=/usr/bin:$PATH lldb'