一步步帶你安裝YouCompleteMe(Linux)

我了個大曹.png

最近在Linux下載用vim寫代碼, 代碼跟上思路的感覺真的是非常好。 美中不足的一點(diǎn)是習(xí)慣了ide的我沒有代碼補(bǔ)全很不習(xí)慣, 于是折騰起了大名鼎鼎的補(bǔ)全插件YouCompleteMe。安裝過程很繁瑣,設(shè)計到很多庫和依賴,花了一天時間查閱大量資料總算是把它給搞定了。接下來就手把手教你在Linux系統(tǒng)中安裝YCM :)

系統(tǒng)版本:Ubuntu 20.04 LTS

git


首先檢查系統(tǒng)是否有安裝git。很多庫都需要git,包括我們自己寫代碼的時候也要通過git來進(jìn)行代碼管理。
使用git --version來檢查是否安裝了git。
如果終端返回git版本,那么恭喜你。
如果沒有終端提示命令沒有找到,在終端輸入
sudo apt-get install git
等進(jìn)度條走完,git就安裝成功了。

cmake


同樣的方式檢查系統(tǒng)中是否有cmake,如果沒有,最后一步編譯會報錯。 同樣在終端輸入
sudo apt-get install cmake進(jìn)行安裝

Vundle


使用Vundle進(jìn)行vim插件管理是一個很不錯的選擇。這一步我們使用git。 在終端中輸入
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
等待系統(tǒng)完成

.vimrc


創(chuàng)建你的.vimrc文件。配合.vimrc, 在文件開頭添加如下代碼:

set nocompatible              “  必需
filetype off                  “ 必需
”  將運(yùn)行時的路徑設(shè)置為包括Vundle并初始化
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
” 使Vuldle管理自己
Plugin ‘VundleVim/Vundle.vim’
”最后要寫入YouCompleteMe管理語句的位置
” 你所有的插件必需在這一行之前添加
call vundle#end()            “ required
filetype plugin indent on    “ required

啟動vim, 并輸入
:PluginInstall

前面都是準(zhǔn)備工作,接下來正式安裝YCM

輸入下面命令

cd ~/.vim/bundle
git clone https://github.com/ycm-core/YouCompleteMe.git

下載完成后進(jìn)入到Y(jié)CM目錄下
cd ~/.vim/bundle/YouCompleteMe
輸入以下命令
git submodule -init -recursive
這個過程會比較長,耐心等待。

上面結(jié)束后,開始編譯YCM支持的所有語言:
./install.py

安裝過程同樣比較慢,耐新等待。 編譯完成后, 在.vimrc中添加:
Plugin 'ycm-core/YouCompleteMe'
再運(yùn)行一遍:PluginInstall,安裝完畢

現(xiàn)在創(chuàng)建一個vim文件開始敲代碼,是不是有代碼提示了。

①: 可能碰到的問題


在進(jìn)行./install.py時會報錯

//這是我的版本
Searching Python 3.8 libraries...
Found Python library: /usr/lib/python3.8/config-3.8-x86_64-linux-gnu/libpython3.8.so

解決辦法:
sudo apt-get install python3-dev
如果還是不可以

sudo apt-get update
sudo apt-get install -y build-essential

這樣再運(yùn)行一遍./install.py,等待結(jié)束。

相關(guān)資料:https://github.com/ycm-core/YouCompleteM YCM
https://github.com/VundleVim/Vundle.vim#about Vundle
https://github.com/ycm-core/YouCompleteMe/issues/914 YCM server SHUT DOWN issue

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容