相关的环境:
win 7 x64
vs2013 community
python 2.7.10 AMD64
python 3.5 AMD64
LLVM 3.5
cmake 3.5
 
YouCompleteMe 不支持 python 2.7.11
 

一、编译vim支持python

下载vim代码,命令:
编译vim代码,使用的是VS2013社区版
具体命令:
SET VCDIR="C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC"
%VCDIR%\vcvarsall.bat x86_amd64
SET TOOLDIR=C:\
%VCDIR%\bin\nmake -f Make_mvc.mak clean
%VCDIR%\bin\nmake -f Make_mvc.mak CPU=AMD64 GUI=yes OLE=yes PYTHON=%TOOLDIR%Python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%Python35 DYNAMIC_PYTHON3=yes PYTHON3_VER=35 IME=yes CSCOPE=yes
 
命令是参考vim的src目录中的bigvim64。bat文件写的,具体的详细参数信息可以在相应的makefile和相应平台的说明文档中找到
 
编译生成的exe文件基本都在src目录下
整理生成文件的命令,参考,整理的并不全面
@echo off
mkdir vim74_bs
echo "create vim74_bs fodler"
copy src\*.exe vim74_bs
copy src\GvimExt\gvimext.dll vim74_bs
copy src\xxd\xxd.exe vim74_bs
 
安装vim
启动生成的install.exe安装相应的指示安装即可
 
二。安装youcompleteme
 
下载代码:
 git submodule update --init --recursive
 
进入代码目录,新建目录ycm_build
 
执行命令,生成相应的工程文件
"C:\Program Files (x86)\CMake\bin\cmake.exe" -G "Visual Studio 12 Win64" -DPATH_TO_LLVM_ROOT=D:\CrossPlatSoftware\LLVM -DUSE_CLANG_COMPLETER=1 -DEXTERNAL_LIBCLANG_PATH=D:\CrossPlatSoftware\LLVM\lib\libclang.lib -DPYTHON_LIBRARY=C:\Python27\libs\python27.lib -DPYTHON_INCLUDE_DIR=C:\Python27\include . ..\third_party\ycmd\cpp
 
使用命令编译,或者使用vs打开相应的工程文件编译
"C:\Program Files (x86)\CMake\bin\cmake.exe" --build . --target ycm_core --config Release
 
github上有更详细的编译说明
 
重要:YCM不支持 python2.7.11
 
编译的时候报错,无法找到win32.mak文件,解决方法:在相应的makefile文件中使用win32.mak的绝对路径包含即可
编译gvimext.dll时候也会碰到相同的错误,解决方法也相同
当然解决这个问题会有更好的方法,目前这种最直接
 
 

vim的编译安装及其插件YouCompleteMe安装的更多相关文章

  1. CentOS 7下的Vim自动补齐插件YouCompleteMe安装及配置

    备注:现在对于 YouCompleteMe 的安装应采用更为简单的方法,即利用 Vundle 来安装这个插件.具体方法可见: Vundle 主页 YouCompleteMe 主页 而 .vimrc 的 ...

  2. 【转】Vim自动补全插件----YouCompleteMe安装与配置

    原文网址:http://www.cnblogs.com/zhongcq/p/3630047.html 使用Vim编写程序少不了使用自动补全插件,在Linux下有没有类似VS中的Visual Assis ...

  3. Vim自动补全插件----YouCompleteMe安装与配置

    Vim自动补全插件----YouCompleteMe安装与配置 使用Vim编写程序少不了使用自动补全插件,在Linux下有没有类似VS中的Visual Assist X这么方便快捷的补全插件呢?以前用 ...

  4. [moka同学收藏]Vim升华之树形目录插件NERDTree安装图解

    无意中看到实验室的朋友使用的vim竟然能在左边显示树形目录,感觉很方便,这样子文件夹有什么文件一目了然.她说是一个插件叫NERDTree,安装执行后的效果如下,不是你想要的效果就别安了.我的系统是Ub ...

  5. Vim升华之树形目录插件NERDTree安装图解

    来源:CSDN 作者:mybelief321 无意中看到实验室的朋友使用的vim竟然能在左边显示树形目录,感觉很方便,这样子文件夹有什么文件一目了然.他说是一个插件叫NERDTree,安装执行后的效果 ...

  6. Vim升华之树形目录插件NERDTree安装图解【转】

    本文转载自:http://www.linuxidc.com/Linux/2013-06/86048.htm 无意中看到实验室的朋友使用的vim竟然能在左边显示树形目录,感觉很方便,这样子文件夹有什么文 ...

  7. ElasticSearch 集群环境搭建,安装ElasticSearch-head插件,安装错误解决

    ElasticSearch-5.3.1集群环境搭建,安装ElasticSearch-head插件,安装错误解决 说起来甚是惭愧,博主在写这篇文章的时候,还没有系统性的学习一下ES,只知道可以拿来做全文 ...

  8. webstorm安装vue插件及安装过程出现的问题

    想要编辑器识别vue文件需要安装vue插件 1. 安装方法: File--> setting  -->  plugin ,点击plugin,在内容部分的左侧输入框输入vue,会出现1个关于 ...

  9. CentOS7 Vim自动补全插件----YouCompleteMe安装与配置

    最近刚装了新系统CentOS7,想要把编码环境配置一下,使用Vim编写程序少不了使用自动补全插件,我以前用的是neocomplcache+code_complete+omnicppcomplete.但 ...

随机推荐

  1. Spring MVC之@RequestParam @RequestBody @RequestHeader 等详解

    (转自:http://blog.csdn.net/walkerjong/article/details/7946109#) 引言: 接上一篇文章,对@RequestMapping进行地址映射讲解之后, ...

  2. Java程序设计之算出一年第多少天

    可以直接拷贝运行. package year; import java.util.Scanner; public class year { public static void main(String ...

  3. Maven与Ant比较

    Maven与Ant比较 0 « 上一篇:Jenkins学习三:介绍一些Jenkins的常用功能» 下一篇:Jenkins学习四:Jenkins 邮件配置 posted @ 2015-03-25 16: ...

  4. javascript的ajax

    AJAX 一 AJAX预备知识:json进阶 1.1 什么是JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON是用字符串来表示Javas ...

  5. BZOJ1500[NOI2005]维修数列

    Description Input 输入的第1 行包含两个数N 和M(M ≤20 000),N 表示初始时数列中数的个数,M表示要进行的操作数目.第2行包含N个数字,描述初始时的数列.以下M行,每行一 ...

  6. #id+变量

    "#id"在解析的时候看成是一个整体字符串或者是一个具体的selector了,只有写成"#"+id,这是才会在解析时把id变量的值进行替换成被赋予的变量的值.链 ...

  7. ConcurrentHashMap

    ConcurrentHashMap是Java5中新增加的一个线程安全的Map集合,可以用来替代HashTable.对于ConcurrentHashMap是如何提高其效率的,可能大多人只是知道它使用了多 ...

  8. C#网络编程——IPHostEntry

    using System; using System.Net; namespace study { class IPHostEntrySample { public static void func( ...

  9. MVC系列——MVC源码学习:打造自己的MVC框架(三:自定义路由规则)

    前言:上篇介绍了下自己的MVC框架前两个版本,经过两天的整理,版本三基本已经完成,今天还是发出来供大家参考和学习.虽然微软的Routing功能已经非常强大,完全没有必要再“重复造轮子”了,但博主还是觉 ...

  10. sqlite3的图片的(二进制数据)存取操作

    sqlite3的图片的(二进制数据)存取操作   前言 上篇介绍了sqlite3的一些常用插入操作方法和注意事项,在实际项目中遇到了图片缓存的问题,由于服务器不是很稳定,且受到外界环境的干扰(例如断电 ...