준호씨의 블로그

osx - lldb import six, import weakref 오류. 직접 설치한 python 2 제거 본문

개발이야기

osx - lldb import six, import weakref 오류. 직접 설치한 python 2 제거

준호씨 2018. 7. 2. 22:48
반응형

osx 에서 lldb 로 디버깅 할 때 brew 로 python@2 를 설치 해 줬다면 이런 저런 에러를 보게 될 수 있다.

brew 로 설치한 python@2 를 꼭 써야될 이유가 없다면 그냥 지우는게 속 편할 수도 있다.

import six 는 설치 해서 해결 가능

import six 문제는

/usr/local/bin/pip install six

로 해결이 가능 한데

import weakref 문제는 해결 못함.

Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/copy.py", line 52, in <module>
    import weakref
  File "/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/weakref.py", line 14, in <module>
    from _weakref import (
ImportError: cannot import name _remove_dead_weakref

이건 해결 못해서 그냥 python@2 를 지워 버렸다.

brew 로 설치한 python@2 삭제

brew remove python@2

brew 로 지운 python@2 를 지우면 시스템 python 으로 바뀌면서 오류가 없어진다.

OS 버전마다 좀 달라질 수는 있겠지만 macOS High Sierra 에서의 기본 python 버전은 다음과 같다.

$ python -V
Python 2.7.10

위치는 /usr/bin/python 이다.

$ which python
/usr/bin/python

잡담

뭔가 다른 나이스한 방법이 있지 않을까 싶은데 아직 찾지 못했다. lldb 가 이정도 python 버전 차이로 동작하지 않는다는게 좀 이상하다.

참고

반응형
Comments