原本想在CentOS6.6下搞,中间各种问题,要升级Python,要升级gcc(还因为之前系统没划分swap分区,高版本的gcc编译不出来),后来索性放弃,在CentOS 7下做。CentOS 7本身自带的vim就是7.4版本的,支持Python,gcc版本是4.8.3的,能顺利编译clang。连CentOS6.6和CentOS7搞了一天一夜,纪念一下可算把vim+ycm整出来了,做个记录。下面的内容都是参考别人的成果,具体链接在小标题中都有给出,如有不明白之处,请按图索骥。既然都是别人写的,自己的部分只有几张图片和几个输出信息,那这篇博文自然也是转载的了。配置部分的图片我已经用文字转出来了,见https://www.zybuluo.com/searcher2xiao/note/136156
一、安装clang (http://www.noevil.me/archives/900.htm)
1.电脑首先得有gcc编译器. 可以参考另一篇文章
编译clang 3.4+的一个软件依赖列表。http://llvm.org/docs/GettingStarted.html#requirements
Package | Version | Notes |
---|
GNU Make | 3.79, 3.79.1 | Makefile/build processor |
GCC | >=4.7.0 | C/C++ compiler1 |
python | >=2.5 | Automated test suite2 |
GNU M4 | 1.4 | Macro processor for configuration3 |
GNU Autoconf | 2.60 | Configuration script builder3 |
GNU Automake | 1.9.6 | aclocal macro generator3 |
libtool | 1.5.22 | Shared library manager3 |
zlib | >=1.2.3.4 | Compression library4 |
安装svn,用于下载clang源码。
2.下载源码,建立一个目录,进入工作。
01 | svn co http: //llvm .org /svn/llvm-project/llvm/trunk llvm |
04 | svn co http: //llvm .org /svn/llvm-project/cfe/trunk clang |
07 | cd llvm /tools/clang/tools |
08 | svn co http: //llvm .org /svn/llvm-project/clang-tools-extra/trunk extra |
12 | svn co http: //llvm .org /svn/llvm-project/compiler-rt/trunk compiler-rt |
源码下载之后就可以开始编译了。
3 | .. /llvm/configure -- enable -optimized -- enable -targets=host-only |
可以查看到已经成功。
1 | [root@localhost build] # clang --version |
2 | clang version 3.7.0 (trunk 242040) |
3 | Target: x86_64-unknown-linux-gnu |
5 | [root@localhost build] # clang++ --version |
6 | clang version 3.7.0 (trunk 242040) |
7 | Target: x86_64-unknown-linux-gnu |
二、vim设置 (http://www.cnblogs.com/voidy/p/4637683.html)
1.主题设置
编码工作中偏爱Sublime text 2的背景色,因此我找了个和这个差不多的Vim主题,名为monokai。喜欢的朋友可以从 https://github.com/Voidly/voidy-Vim/tree/master/colors下载。下面说一下如何对Vim的主题进行配置:
- 首先你需要建立一个文件夹.vim,在根目录下(如果有的话请直接跳到第2步)。具体操作如下:
$ mkdir ~/.vim
- 接下来在.vim目录下创建一个名为colors的目录,将你下载的主题文件*.vim放到这个目录下。
- 最后一步,编辑.vimrc文件,使用下载的目录:
$vim ~/.vimrc
在里面加入如下两行代码:
1 syntax enable
2 colorscheme monokai
2.安装插件管理器-Vundle
1 $ git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
OK之后,先在你的~/.vimrc里面进行一些配置,配置清单如下:
这部分内容的填写看~/.vim/bundle/Vundle.vim/README.md中的3Configure Plugins即可。
现在简单说一下如何使用这个插件管理神器,首先你需要把你想要安装的插件都放在下面的两行代码之间。
1 call vundle#begin()
2 call vundle#end()
其中第8行的时必装的Plugin,这样才能让Vundle管理插件,最后再简单介绍一下使用方法(其实刚刚贴出来的里面已经有了英文的简单的help)。
- :PluginList 列出配置的Plugins。
- :PluginInstall 安装在vundle#begin()和vundle#end()之间的插件。
- :PluginClean 卸载不在vundle#begin()和vundle#end()代码段之间的插件。
3.安装插件-YCM (http://blog.csdn.net/leaf5022/article/details/21290509#comments)
在.vimrc中添加
1 Plugin ‘Valloric/YouCompleteMe’
进入vim,执行:PluginInstall
创建文件夹放置编译文件
1 | cmake -G "Unix Makefiles" -DEXTERNAL_LIBCLANG_PATH=/usr/local/lib/libclang.so ~/.vim/bundle/YouCompleteMe/cpp |
make