Mac里面默認的編譯器是clang/clang++
所以debugger就選擇了lldb
想搭配MacVim一起使用,於是就找到了vim-lldb這個插件,相當強大
這個插件支持Vundle,所以安裝起來比較容易。
不過我在安裝過程中發現vim提示Python Fatal Error的提示,
最后發現原因是我用brew安裝了第三方的python,
所以系統里存在兩個python:原生python和第三方python,導致了錯誤
解決辦法就是卸載或者unlink,用brew安裝的python
brew uninstall python
或者
brew unlink python
注意,這有可能會導致你的其他用第三方編譯的程序出問題,所以慎重。
最壞的情況就是用系統自帶的python再編譯一遍。。。233333
使用方法:
1. 在Terminal中,用調試模式編譯cpp文件,默認生成a.out文件
clang++ -g test.cpp
2. 用Vim / MacVim打開test.cpp 文件,指定目標可執行文件
vim test.cpp
在Vim中,輸入
:Ltarget a.out
之后會調處一堆窗口,包括locals, breakpoints等等。
3. 在Vim中輸入
:Lstart
開始調試,這時候,由於你沒有設置斷點,所以程序直接運行完了
4. 在Vim中你需要設置斷點的地方,輸入
:Lbreakpoint
就可以在光標位置設置斷點了
5. 重新執行:Lstart命令就可以在斷點處停止了。
我在.vimrc文件中定義的快捷鍵如下
" vim-lldb Settings let g:lldb_map_Lstart = “<F5>" let g:lldb_map_Lcontinue = “<F6>" let g:lldb_map_Lbreakpoint = “<F9>" let g:lldb_map_Lnext = “<F10>" let g:lldb_map_Lstep = “F11"
其他命令可以查看Vim里面的幫助:he lldb