在CentOS 6.6 64bit上安装vim智能补全插件YouCompleteMe
生活随笔
收集整理的這篇文章主要介紹了
在CentOS 6.6 64bit上安装vim智能补全插件YouCompleteMe
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡介
YouCompleteMe是一個隨鍵而動的、支持模糊搜索的、高速補全的插件。YCM由google公司搜索項目組的軟件工程師Strahinja Val Markovic所開發,YCM后端調用libclang(以獲取AST,當然還有其他語言的語義分析庫)、前端由C++開發(以提升補全效率)、外層由 python 封裝(以成為 vim 插件),它可能是我見過安裝最復雜的vim插件了。
安裝前提條件及分析
vim 7.3.584+
vim支持Python 2.6+
cmake
clang 3.3+
gcc/g++ 4.7+(支持c++11)
分析上面的這些前提條件,在CentOS 6.6上我們將需要做大量的升級工作:
1.gcc默認版本是4.4.7,不支持C++11,需要將gcc升級到4.8.2
2.vim默認不支持python,需要從源碼編譯并安裝vim,在配置時加入對Python的支持
3.clang需要LLVM編譯器框架,需要編譯安裝LLVM+clang
4.需要升級c++庫到C++標準,需要安裝clang標準庫libc++,libc++abi.so等等
安裝依賴庫
yum -y install gcc-c++ subversion git?
http://blog.csdn.net/tao_627/article/details/50449283
編譯YouCompleteMe插件
需要事先安裝cmake,clang等
現假定你已經通過Vundle安裝YCM,就是在~/.vimrc文件中加入?
Bundle 'Valloric/YouCompleteMe'
然后用vim打開任意一個文件,比如
vim old.vimrc
在底部輸入
:VundleInstall
這里Vundle會使用git自動下載YouCompleteMe的全部代碼。此時我們會得到這樣的錯誤提示:
Done! With errors; press l to view log
ycm_client_support.[so|pyd|dll] and ycm_core.[so|pyd|dll] not detected; you need to compile YCM before using it. Read the docs!
創建一個新文件夾用于存放build的東西
cd ~
mkdir ycm_build
cd ycm_build
cmake -G "Unix Makefiles" -DUSE_SYSTEM_LIBclang=ON ?-DEXTERNAL_LIBCLANG_PATH=/usr/local/lib/libclang.so . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
這樣會得到makefile文件,但是我們不會用到
cmake --build . --target ycm_support_libs
會在目錄
/root/.vim/bundle/YouCompleteMe/third_party/ycmd
下面生成這三個庫
libclang.so,ycm_core.so,ycm_client_support.so
在.vimrc文件中添加一行來進行全局設置
參考文獻
[1].http://valloric.github.io/YouCompleteMe/
[2].http://valloric.github.io/YouCompleteMe/#full-installation-guide
[3].http://www.linuxidc.com/Linux/2014-04/99719.htm
YouCompleteMe是一個隨鍵而動的、支持模糊搜索的、高速補全的插件。YCM由google公司搜索項目組的軟件工程師Strahinja Val Markovic所開發,YCM后端調用libclang(以獲取AST,當然還有其他語言的語義分析庫)、前端由C++開發(以提升補全效率)、外層由 python 封裝(以成為 vim 插件),它可能是我見過安裝最復雜的vim插件了。
安裝前提條件及分析
vim 7.3.584+
vim支持Python 2.6+
cmake
clang 3.3+
gcc/g++ 4.7+(支持c++11)
分析上面的這些前提條件,在CentOS 6.6上我們將需要做大量的升級工作:
1.gcc默認版本是4.4.7,不支持C++11,需要將gcc升級到4.8.2
2.vim默認不支持python,需要從源碼編譯并安裝vim,在配置時加入對Python的支持
3.clang需要LLVM編譯器框架,需要編譯安裝LLVM+clang
4.需要升級c++庫到C++標準,需要安裝clang標準庫libc++,libc++abi.so等等
安裝依賴庫
yum -y install gcc-c++ subversion git?
從源碼編譯支持Python 2.7.10的vim,參見
http://blog.csdn.net/tao_627/article/details/50444866
http://blog.csdn.net/tao_627/article/details/49980815
將gcc升級到4.8.2,參見
http://blog.csdn.net/tao_627/article/details/50448924
http://blog.csdn.net/tao_627/article/details/50449283
編譯YouCompleteMe插件
需要事先安裝cmake,clang等
現假定你已經通過Vundle安裝YCM,就是在~/.vimrc文件中加入?
Bundle 'Valloric/YouCompleteMe'
然后用vim打開任意一個文件,比如
vim old.vimrc
在底部輸入
:VundleInstall
這里Vundle會使用git自動下載YouCompleteMe的全部代碼。此時我們會得到這樣的錯誤提示:
Done! With errors; press l to view log
ycm_client_support.[so|pyd|dll] and ycm_core.[so|pyd|dll] not detected; you need to compile YCM before using it. Read the docs!
上述報錯提示,需要安裝ycm_client_support.so ycm_core.so,這需要編譯YCM
假設YouCompleteMe的頂級目錄是
~/.vim/bundle/YouCompleteMe創建一個新文件夾用于存放build的東西
cd ~
mkdir ycm_build
cd ycm_build
cmake -G "Unix Makefiles" -DUSE_SYSTEM_LIBclang=ON ?-DEXTERNAL_LIBCLANG_PATH=/usr/local/lib/libclang.so . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
這樣會得到makefile文件,但是我們不會用到
cmake --build . --target ycm_support_libs
會在目錄
/root/.vim/bundle/YouCompleteMe/third_party/ycmd
下面生成這三個庫
libclang.so,ycm_core.so,ycm_client_support.so
修改配置文件.ycm_extra_conf.py,它是個隱藏文件,路徑在
~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py在.vimrc文件中添加一行來進行全局設置
let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py '
下面是使用Vundle安裝YouCompleteMe插件的截圖,易見沒有報錯信息:
參考文獻
[1].http://valloric.github.io/YouCompleteMe/
[2].http://valloric.github.io/YouCompleteMe/#full-installation-guide
[3].http://www.linuxidc.com/Linux/2014-04/99719.htm
總結
以上是生活随笔為你收集整理的在CentOS 6.6 64bit上安装vim智能补全插件YouCompleteMe的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: /usr/lib64/libstdc++
- 下一篇: 在CentOS 6.6 64bit上升级