Centos7安装vim8.0 + YouCompleteMe

来源:互联网 发布:游戏寻路算法 编辑:程序博客网 时间:2024/05/23 19:16
    首先,支持一下阿里云!阿里云ECS服务器,有幸运券了。欢迎大家来领取:
              https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=5uqvqirt&productCode=vm&utm_source=5uqvqirt

前言

为vim安装YouCompleteMe我已经是不止一次了,两次ubuntu,一次MacOS,一次阿里云的centos,最后一次由于gcc版本太低当时没找到解决方案就把源码下了在机子上编译导致cpu100%运行直接挂了,也就放弃了….现在在虚拟机上装了一次centos,想再尝试一次,遇到了一些坑,不过最后还是成功了,附上截图:

这里写图片描述

这里写图片描述


先说坑(解决方案在后面安装步奏中会说)

  • vim版本低 
    明明就差小数点后几位但是就不行,索性就装了vim8.0

  • gcc版本不支持c++11 
    现在发现下一个centos工具包就行了,其中包含最新的gcc

  • vim不支持python 
    在编译vim源代码时加上一些后缀就行了

  • ./install.py时说缺少依赖 
    这个就按照出错提示中要求输的命令输一下就行了


步奏

更新yum

sudo yum upgradesduo yum update
  • 1
  • 2

下载git

sudo yum install git
  • 1

升级vim以及gcc

升级gcc

sudo yum install centos-release-scl -ysudo yum install devtoolset-3-toolchain -ysudo scl enable devtoolset-3 bash
  • 1
  • 2
  • 3

升级vim

yum install ncurses-develwget https://github.com/vim/vim/archive/master.zipunzip master.zipcd vim-mastercd src/./configure --with-features=huge -enable-pythoninterp --enable-python3interpsudo makesudo make installexport PATH=/usr/local/bin:$PATH
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

这里列举一些 ./configure 后面的配置选项

  • –with-features=huge:支持最大特性
  • –enable-rubyinterp:打开对ruby编写的插件的支持
  • –enable-pythoninterp:打开对python编写的插件的支持
  • –enable-python3interp:打开对python3编写的插件的支持
  • –enable-luainterp:打开对lua编写的插件的支持
  • –enable-perlinterp:打开对perl编写的插件的支持
  • –enable-multibyte:打开多字节支持,可以在Vim中输入中文
  • –enable-cscope:打开对cscope的支持
  • –with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu/ 指定python 路径
  • –with-python-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/ 指定python3路径
  • –prefix=/usr/local/vim:指定将要安装到的路径(自行创建)

关于vim的安装路径

默认新的vim是安在/usr/bin/local/中的,但是PATH中会首先找到/usr/bin/中旧的vim,所以不介意的话把旧的vim删了也可以,也可以输入下面的命令来使命令行中的vim指令指向 /usr/local/bin/vim 的程序

alias vim='/usr/local/bin/vim'
  • 1

下载编译ycm

git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMegit submodule update --init --recursive
  • 1
  • 2

在 ~/ 下创建文件 .vimrc,输入一下内容

set nocompatible filetype off set rtp+=~/.vim/bundle/Vundle.vim call vundle#begin() Plugin 'gmarik/Vundle.vim' call vundle#end() filetype plugin indent on 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

使用vim打开,后输入 :PluginInstall 
完成后在 ‘Plugin ‘gmarik/Vundle.vim’的下一行输入 ‘Plugin ‘Valloric/YouCompleteMe’,保持后退出

cd ~/.vim/bundle/YouCompleteMe./install.py --clang-completer
  • 1
  • 2

由于我也希望ycm能进行nodejs和golang的补全,所以可以在./install.py 后添加如下后缀

./install.py  --clang-completer  --gocode-completer --tern-completer
  • 1

安装完成后将.yum_extra_conf.py复制一份到 ~/

cp ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py ~/
  • 1

之后打开在~/中的文件,进行找到此为止进行添加

...'-isystem','/usr/include','-isystem','/usr/include/c++/','-isystem','/usr/include/i386-linux-gnu/c++'...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

完毕后打开.vimrc进行配置

let g:ycm_global_ycm_extra_conf='~/.ycm_extra_conf.py'  "设置全局配置文件的路径let g:ycm_seed_identifiers_with_syntax=1    " 语法关键字补全let g:ycm_confirm_extra_conf=0  " 打开vim时不再询问是否加载ycm_extra_conf.py配置let g:ycm_key_invoke_completion = '<C-a>' " ctrl + a 触发补全set completeopt=longest,menu    "让Vim的补全菜单行为与一般IDE一致(参考VimTip1228)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

更过个性化配置可以自行百度搜索


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 物流显示禁运品怎么办 淘宝禁运品怎么办呢 货物退回日本了怎么办 淘宝卖家寄多了衣服怎么办 集运地址选错怎么办 淘宝卖韩国化妆品退货怎么办 去韩国留学手机怎么办 韩国办无线网怎么办 淘宝卖家被骗怎么办 淘宝买软件被骗怎么办 被淘宝店诈骗怎么办? 支付宝被骗2000怎么办 给私人打款后不发货怎么办 毕业证寄丢了怎么办 微商下单返现被骗一千四怎么办 淘宝买东西卡里多扣钱怎么办 付款了卖家不发货怎么办 淘宝客服不解决问题怎么办 淘宝未付款订单怎么办 淘宝被限制购买怎么办 苹果官换机维修过怎么办 iphone x官换机坏了怎么办 小娃不要大人睡怎么办? 深度睡眠太少怎么办 踏板摩托车淹缸怎么办 电喷摩托车淹缸怎么办 踏板摩托不过油怎么办 火花塞被汽油淹怎么办 踏板车淹缸了怎么办 电喷汽车淹缸怎么办 踏板摩托车粘缸怎么办 鬼火打不着火怎么办 踏板摩托车没电怎么办 买摩托车被骗了怎么办 鬼火电瓶坏了怎么办 摩托闷油了怎么办 鬼火发不着火怎么办 淘宝买东西发错货了怎么办 咸鱼售假处罚怎么办 趣头条登录不上怎么办 淘宝集运超租怎么办