我正在爲我的lldb會話添加一些Python腳本,但我發現它只在/usr/bin/python
是PATH上的第一個Python時才起作用。如果我有另一個在PATH上第一個找到的Python,那麼只要lldb初始化它的內部Python系統,它就會得到如下的異常並終止。我可以告訴lldb使用PATH中第一個以外的Python嗎?
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 548, in <module>
main()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 530, in main
known_paths = addusersitepackages(known_paths)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 266, in addusersitepackages
user_site = getusersitepackages()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 241, in getusersitepackages
user_base = getuserbase() # this will also set USER_BASE
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site.py", line 231, in getuserbase
USER_BASE = get_config_var('userbase')
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sysconfig.py", line 516, in get_config_var
return get_config_vars().get(name)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sysconfig.py", line 449, in get_config_vars
import re
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/re.py", line 105, in <module>
import sre_compile
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sre_compile.py", line 14, in <module>
import sre_parse
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sre_parse.py", line 17, in <module>
from sre_constants import *
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sre_constants.py", line 18, in <module>
from _sre import MAXREPEAT
ImportError: cannot import name MAXREPEAT
有一些LLDB設置或命令,讓我獨自離開我的道路,但仍然有LLDB使用/usr/bin/python
?
我也可以通過設置PYTHONHOME=/usr
來解決這個問題,但是由於我在調試自定義Python構建和Python擴展,所以我真的不想改變環境。似乎應該有一些方法,如settings set internal-python /usr/bin/python
,我可以在我的~/.lldbinit
中告訴lldb使用什麼。
你可能需要設置你的路徑來包含你想要使用的python版本的站點包和各種包含...但是我確定它可以完成(我使用pycharm和一些項目使用kivy和它的版本的Python,而其他人使用我的常規python安裝,但即時通訊運行win7,所以它可能會或可能不適用於你)(ps wxPython是偉大的,我用它所有的時間!) –
是的,我也可以解決它設置PYTHONHOME,但由於我正在調試自定義Python構建和Python擴展,我真的不想改變環境。我會更新這個問題... – RobinDunn