Centos7安装vim8.0 + YouCompleteMe

原创 2017年07月18日 23:20:08

前言

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

这里写图片描述

这里写图片描述


2017.10.29更:最近租了一个vultr的centos主机当vps用,也在上面安装了vim以及ycm,又踩了一些坑

➡️ 主机为安装完整的python开发环境导致vim无法开启对python插件对支持

➡️ 主机的内存不够,导致编译过程中由于内存用尽而崩溃:virtual memory exhausted: Cannot allocate memory


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

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

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

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

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


步奏

更新yum

sudo yum upgrade
sduo yum update

下载git

sudo yum install git

升级vim以及gcc

升级gcc

sudo yum install centos-release-scl -y
sudo yum install devtoolset-3-toolchain -y
sudo yum install gcc-c++
sudo scl enable devtoolset-3 bash

升级vim

yum install ncurses-devel
wget https://github.com/vim/vim/archive/master.zip
unzip master.zip
cd vim-master
cd src/
./configure --with-features=huge -enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config
sudo make
sudo make install
export PATH=/usr/local/bin:$PATH

⚠️注意 这里的--with-python-config-dir=/usr/lib/python2.7/config 等号后的路径每
个机子不一定相同,总之需要找到 config 这个文件夹。

其次,我后面在vultr的centos主机上安装vim时出现了无论如何都无法为添加vim添加python支持的问题,后来发现是这个主机没有安装python开发环境python-dev,执行以下命令
安装

sudo yum upgrade
sudo yum install python-devel

这里列举一些 ./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'

下载编译ycm

git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe

cd ~/.vim/bundle/YouCompleteMe

git submodule update --init --recursive

在 ~/ 下创建文件 .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 

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

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

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

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

⚠️注意:在对yum进行编译时如果你的主机存不够的话编译会中断,比如更新文章前我在为vultr的centos主机配ycm,因为是当vps用的只买了$5/月的,内存只有1G,在编译时到98%时崩溃进程终止TT

查阅资料发现需要添加一个 swap file教程网址戳此

下面是指令,复制粘贴就行

su

dd if=/dev/zero of=/swapfile1 bs=1024 count=524288

mkswap /swapfile1

swapon /swapfile1

vi /etc/fstab

# edit /etc/fstab file, add the following line

/swapfile1 none swap sw 0 0

# save and quit

free -m

swapon -s

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

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

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

...

'-isystem',
'/usr/include',
'-isystem',
'/usr/include/c++/',
'-isystem',
'/usr/include/i386-linux-gnu/c++'

...

完毕后打开.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)

更过个性化配置可以自行百度或google


参考博客

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nzyalj/article/details/75331822

Centos 6.5(64位) vim 8.0 安装

1 先得安装nurses库yum list | grep "ncurses*" 查看你对对应版本的 ncurses库 我的64位是 ncurses-devel.x86_64,32位那就是i686了 ...
  • sdoyuxuan
  • sdoyuxuan
  • 2017-12-17 16:32:15
  • 347

尝鲜 vim8 centos

centos 6和7通过yum安装的vim版本仍为7.4,若想尝鲜,可获取源码包编译安装。 准备工作  1.检查vim旧版本,若已存在,将其卸载。 $ vim $ yum remove vi...
  • u013388603
  • u013388603
  • 2017-05-27 13:19:46
  • 3117

ubuntu和centos下安装vim8.0

如果是使用的 ubuntu 系统,可以使用 ppa 来很方便的安装: sudo add-apt-repository ppa:jonathonf/vim sudo apt update sudo ap...
  • xs20691718
  • xs20691718
  • 2017-03-24 15:42:54
  • 3699

CentOS6.7源码安装vim-8.0

参考网址: 1、http://www.linuxprobe.com/easymake-vim8.html 2、https://github.com/Valloric/YouCompleteMe/wik...
  • CalvinLu
  • CalvinLu
  • 2017-10-20 04:40:51
  • 420

linux下安装vim8.0,支持python、perl、lua等解释器

centos vim7.4升级到vim8.0全过程
  • lianshaohua
  • lianshaohua
  • 2017-06-28 14:00:25
  • 2577

CentOS6.5 下安装vim7

我的vim配置主要有以下优点:  1.按F5可以直接编译并执行C、C++、java代码以及执行shell脚本,按“F8”可进行C、C++代码的调试  2.自动插入文件头 ,新建C、C++源文件时自...
  • u013711616
  • u013711616
  • 2016-04-19 10:59:18
  • 1524

vim8.0 安装与配置(CentOS7)

由于安装与配置一个适合开发的vim环境比较复杂,本文将自己安装配置vim及其插件的过程进行记录,以便以后查看。希望也能对喜欢vim的同学提供一些帮助。目的:在CentOS7上安装配置vim8.0,打造...
  • zs376957686
  • zs376957686
  • 2018-03-09 18:03:51
  • 1093

Centos 7系统下的vim配置

对于Linux初学者来说,vim是不可或缺的编辑器。但是,其原始风格太过于单调,且不方便我们源代码的书写,因此,对vim编辑器的配置就尤为重要。 1. 在普通用户或超级用户下输入命令 : ls ...
  • qq_35032155
  • qq_35032155
  • 2017-04-08 11:37:44
  • 2281

Centos7.x - 安装vim

#安装vim [root@localhost soft]# yum install vim -y
  • shenzhen_zsw
  • shenzhen_zsw
  • 2017-09-04 22:44:51
  • 1758

centos6.7 升级vim8

参考网址 1、https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source 源码编译安装Python-2....
  • u013388603
  • u013388603
  • 2017-12-27 17:03:33
  • 304
收藏助手
不良信息举报
您举报文章:Centos7安装vim8.0 + YouCompleteMe
举报原因:
原因补充:

(最多只允许输入30个字)