vim学习之安装YouCompleteMe
YouCompleteMe号称vim最难安装的插件,是太低估它了,我觉得只是目前我遇到的最难安装的一个软件。
YouCompleteMe是用c++写的,要想补全c-family需要用clang编译。
clang是苹果基于llvm架构开发的编译器,具有强大的语义分析能力,在它没有出现之前,emacs和vim的自动补全烂了几十年,它的目标是超越gcc
而YouCompleteMe下层用c++写的用到了clang语义补全的引擎,上层用Python封装。想要安装它并非易事,涉及到很多底层的东西。
在这里我简单罗列出两种环境下的安装步骤:windows下gvim和linux下的vim
一、windows下:
1、安装gvim支持Python(vim --version,Python前面有+号,表示支持,如果没有需要自己编译安装对Python的支持。刚说了YouCompleteMe用Python封装,没有对Python的支持后面都会白做,一身冷汗。)
2、git到~/vimfiles/bundle/ 地址:https://github.com/Valloric/YouCompleteMe
3、git submodule update --init --recursive 更新库
4、安装cmake编译器
5、安装visual studio 2017勾选c++应用开发模块(因为会用到C++编译器,到时候会用vs来编译,记得选择高版本的vs,2013以下对clang不支持)
6、下载clang和llvm编译安装
7、cmake -G "Visual Studio 15 Win64" . d:/Vim/vimfiles/bundle/YouCompleteMe/third_party/ycmd/cpp -DPYTHON_LIBRARYD=d:/Python27/libs -DPYTHON_INCLUDE_DIR=d:/Python27/include(这个是不需要c-family补全的编译命令)
cmake -G "Visual Studio 15 Win64" -DPATH_TO_LLVM_ROOT=d:/llvm . d:/Vim/vimfiles/bundle/YouCompleteMe/third_party/ycmd/cpp -DPYTHON_LIBRARYD=d:/Python27/libs -DPYTHON_INCLUDE_DIR=d:/Python27/include(这个是需要c-family补全的编译命令)
8、python install.py --all
9、配置_vimrc
二、linux下:
上面四步一样
5、如果需要c-family补全就编译安装llvm和clang
6、./install.py --all
具体看https://github.com/Valloric/YouCompleteMe
另外gcc编译器需要4.9以上,4.8的自己重新编译安装。
-------------------------------------------------------------------------------------
windows下我的YCM并没有安装成功,有时间再看一下。
https://github.com/Vito-Yan/gvim
vim学习之安装YouCompleteMe的更多相关文章
- Vim和Neovim安装YouCompleteMe
确定支持Python,Vim一般支持,Neovim默认不支持 Vim的就不介绍方法了,很多系统都不一样.Neovim添加Python支持 pip install setuptools pip inst ...
- vim的编译安装及其插件YouCompleteMe安装
相关的环境: win 7 x64 vs2013 community python 2.7.10 AMD64 python 3.5 AMD64 LLVM 3.5 cmake 3.5 YouCompl ...
- vim安装YouCompleteMe 插件
要安装YouCompleteMe ,vim须支持python.看是否支持,可以在vim中:version 查看, 如果python前有+号,就是支持,减号就是不支持. 如果不支持,需要以编译安装方式重 ...
- vim学习、各类插件配置与安装
vim学习.各类插件配置与安装 vim 插件 配置 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶书籍<vim实用技巧>.注:进阶书籍可以在 ...
- 解决安装YouCompleteMe与Vim版本不兼容问题
用vim 7.4.4版本装YouCompleMe的时候提示这样的信息: YouCompleteMe unavailable: requires Vim 7.4.1578+.明明版本比它要求的还高,居然 ...
- vim学习、各类插件配置与安装【转】
转自:https://www.cnblogs.com/forest-wow/p/6916531.html 1. vim学习 vim基础学习:根据网上流行基础文章<简明Vim练级攻略>,进阶 ...
- Vim使用Vundle安装代码补全插件(YouCompleteMe)
安装 Vundle 它的使用方法很简单,安装一个插件只需要在 ~/.vimrc 按照规则中添加 Plugin 的名称,某些需要添加路径,之后在 Vim 中使用:PluginInstall既可以自动化安 ...
- 给vim安装YouCompleteMe
要安装YouCompleteMe ,vim须支持python.看是否支持,可以在vim中:version 查看, 如果python前有+号,就是支持,减号就是不支持. 如果不支持,需要以编译安装方式重 ...
- Linux c++ vim环境搭建系列(3)——Ubuntu18.04.4编译安装youcompleteme
3. youcompleteme编译安装 参考网址: https://github.com/ycm-core/YouCompleteMe#linux-64-bit 建议不要用这个博客的方法: http ...
随机推荐
- Coding and Paper Letter(五十八)
资源整理. 1 Coding: 1.支持TMS.WMTS标准瓦片下载,支持百度地图瓦片.高德地图瓦片.腾讯地图瓦片.天地图.ArcServer Rest瓦片.ArcServer本地缓存切片.geose ...
- 【BZOJ5471】[FJOI2018]邮递员问题(动态规划)
[BZOJ5471][FJOI2018]邮递员问题(动态规划) 题面 BZOJ 洛谷 给定平面上若干个点,保证这些点在两条平行线上,给定起点终点,求从起点出发,遍历所有点后到达终点的最短路径长度. 题 ...
- 【UOJ#340】【清华集训2017】小 Y 和恐怖的奴隶主(矩阵快速幂,动态规划)
[UOJ#340][清华集训2017]小 Y 和恐怖的奴隶主(矩阵快速幂,动态规划) 题面 UOJ 洛谷 题解 考虑如何暴力\(dp\). 设\(f[i][a][b][c]\)表示当前到了第\(i\) ...
- [WC2011]最大XOR和路径(贪心+线性基)
题目大意:给一张无向图,求一条1-n的路径,是路径边权的异或和最小. 题解 这道题的思路很妙,首先我们可以随便找出一条从1到n的路径来,然后我们可以选一些环. 其实不管这个环和这条路径有怎样的关系,我 ...
- Zabbix-proxy安装部署
原文链接:https://www.cnblogs.com/irockcode/p/6754659.html 环境: 因为公司需要监控远程客户机,但server端无法主动连接agent端,客户端可以连接 ...
- java ArrayList去重
对list集合中的重复值进行处理,大部分是采用两种方法, 一种是用遍历list集合判断后赋给另一个list集合, 另一种是用赋给set集合再返回给list集合. 方法1:set集合去重,不打乱顺序 L ...
- 洛谷P3620 数据备份
好吧,我一开始说这是个神级数据结构毒瘤题,后来改成神题了. 主要是贪心做法的巧妙转化: 首先发现选择的一对必须相邻,于是我们搞出差分. 然后考虑选取最小值时,最小值两侧的数要么同时选,要么都不选. 然 ...
- HEOI2013 Segment
传说中的“李超树”. 大意:给你若干线段,试求横坐标x上的最上方一条线段的编号.无则输出零. 解:用线段树维护. 插入的时候保存自己这个区间上可能成为最大值的线段,被抛弃的则看情况下放. 查询时从最底 ...
- Jenkins Pipelines Summary
示例1: pipeline{ agent {label "xxx"} // label is a special machine registered in Jenkins env ...
- ansible的主机的默认配置部分
Ansible默认安装好后有一个配置文件/etc/ansible/ansible.cfg,该配置文件中定义了ansible的主机的默认配置部分,如默认是否需要输入密码.是否开启sudo认证.actio ...