使用MSYS2编译64位gvim
1. 下载安装MSYS2
在https://msys2.github.io/下载MSYS2,推荐下载x86-64版,此版本内置了MinGW32与MinGW64
安装后首先更新MSYS2系统,顺序执行下列代码(注:每条语句执行完毕后若提示关闭终端,则应关闭终端重新打开,再继续下一跳指令)
pacman -Sy pacman
pacman -Syu
pacman -Su
2. 配置编译环境
所需软件:gcc(x64),make(可选,默认有mingw32-make),git
MSYS2.exe或MinGW64.exe打开终端执行下列代码安装
pacman -S mingw-w64-x86_64-gcc make git
3. 获取vim源码
git clone https://github.com/vim/vim vim
3.1 添加python支持
在源码目录vim/src/Make_ming.mak修改添加如下代码($(MSYS2)替换为MSYS2的安装目录如C:/MSYS2)
PYTHON=$(MSYS2)/mingw64
PYTHON_HOME=$(MSYS2)/mingw64
PYTHONINC=-I$(MSYS2)/mingw64/include/python2.7
DYNAMIC_PYTHON_DLL=libpython2.7.dll
STATIC_STDCPLUS=yes
3.2添加lua支持
下载地址:http://luabinaries.sourceforge.net/download.html
x86系统下载lua-X.Y.Z_Win32_dllw4_lib.zip
x84系统下载lua-X.Y.Z_Win64_dllw4_lib.zip
下载后解压至任意目录
在源码目录vim/src/Make_ming.mak修改添加如下代码(已lua5.3.x为例)
LUA=C:/Lua53
LUA_VER=53
DYNAMIC_LUA=yes
然后复制解压出来的lua53.dll文件到windows的系统目录,具体哪个目录依赖于你的vim版本位数和windows版本位数:
32位Windows上编译32位vim: C:\Windows\System32
64位Windows上编译32位vim: C:\Windows\SysWOW64
64位Windows上编译64位vim: C:\Windows\System32
也可以复制lua53.dll到gvim所在的目录
4. 编译gvim
阅读vim/src/INSTALLpc.txt来设置makefile文件,MSYS2对应makefile位于vim/src/Make_ming.mak
配置好后,MinGW64.exe打开终端,切换到vim/src目录
执行$ make -f Make_ming.mak USERNAME=xxx USERDOMAIN=xxx编译
使用MSYS2编译64位gvim的更多相关文章
- Windows下编译64位GSL
GSL (GNU Scientific Library, http://www.gnu.org/software/gsl/)官方并没有提供编译好的Windows版本.首先要保证Windows是64位的 ...
- VS 2013编译64位版本QT 4.8.6及使用cmake为依赖QT生成VS项目时Could NOT find Qt4
对于一些已经解决的问题,本博客不再讨论.只将本人遇到的问题做简单的说明. 一.VS 2013编译64位版本QT 4.8.6 QT项目官网中,对于QT4,其只提供了windows X86的版本,并且支持 ...
- VS2015下编译64位GDAL总结
使用VS2015编译最新的64位GDAL(最新gdal2.11),确实有一些问题,看来双方还是太新了,有点不兼容,特总结如下. 以前经常用的通过VisualStudio IDE进行编译的方式现在似乎不 ...
- 使用visual c++ 2005编译64位可执行文件
最近需要将一个32位的程序移植到64位上,由于原来是使用vs2003写的,vs2003本身并不支持编译64位系统上,只能升级到vs2005以上版本.个人还是比较喜欢vs2005,对c++来说,vs20 ...
- Visual Studio 2013 编译 64 位 Python 的 C 扩展 (使用 PyObject 包装)
对于 32 位 Python 的 C 扩展,以前用过 mingW32 编译, 但是 mingW32 不支持 64 位 Python 的 C 扩展编译,详情可见 stackoverflow,这位前辈的大 ...
- ubuntu16 64位 编译64位程序和32位程序
安装了ubuntu16 64位的系统,想在该环境下用gcc编译64位和32位的程序 默认已经安装了64位环境的gcc 1. 首先确认安装的环境是不是64位的 cocoa@cocoaUKlyn:~/De ...
- 使用VS2015 编译 64位的boost库
别人写的编译参考: 目标:使用VS2015 编译 64位的boost库. 一直以来都是在Win32环境下Build和使用boost,但现在基本上每天都在64位Win7下工作,所以很有必要把这几天的经验 ...
- windows 下编译64位ffmpeg
window下如何编译ffmpeg 前文已有介绍,前面介绍的都是如何编译32位的库,本文主要介绍window 下如何编译64位ffmpeg库. 一.搭建编译环境 1.下载 windows下编译64位F ...
- 如何在linux 32位机器编译64位程序
编译64位程序,不一定要编译机器是64位的,但是32位机器默认安装的gcc编译环境还是不能用来编译64位程序. 编译64位程序,需要加上-m64编译器参数,默认安装的gcc已经支持该参数,但是缺少64 ...
随机推荐
- 在内核中增加对yaffs文件系统的支持
自己最近在搞一些内核以及根文件系统的移植,就涉及到了需要在内核中增加对yaffs文件系统的支持.在网上找了一些文档后,自己将具体的操作过程做了一个总结,方便以后查询使用: 1.获取yaffs源码 YA ...
- <关于数据仓库>基于docker的Mysql与Hadoop/Hive之间的数据转移 (使用Apache Sqoop™)
原创博客,转载请联系博主! 摘要:本文介绍了如何使用docker快速搭建一个可以从外部访问的mysql服务容器,和由docker搭建的分布式Hadoop文件系统,并且使用ApacheSqoop完成将m ...
- 应用OpenCV进行OCR字符识别
opencv自带一个字符识别的例子,它的重点不是OCR字符识别,而主要是演示机器学习的应用.它应用的是UCI提供的字符数据(特征数据). DAMILES在网上发布了一个应用OpenCV进行OCR的例子 ...
- 如何初始化一个iOS原生地图
/** 初始化一个mapView 需导入 #import <MapKit/MapKit.h> - returns: 返回一个mapView对象 */ mapView = [[MKMapV ...
- 全选Form > Grid 的所有行
在AX的Grid 按Ctrl+A,并不一定能选择到grid 的所有行,比如你要将当前grid的数据复制到Excel,你需要全部选择所有行. 但AX自身的数据缓存机制,数据量非常大的时候当前grid只装 ...
- PowerDesigner之PDM(物理概念模型)
一.PDM概述 PDM(物理数据模型),通俗地理解,就是在PowerDesigner中以图形化的方式展示和设计数据库. PDM中涉及到的基本概念包括: 表: 列: 视图: 主键: 候选键: 外键: 存 ...
- jQuery Ajax 全解析(转)
<!-- .ajax div{ border: solid 1px red; } --> // <![CDATA[ $(function(){ $("#btnajax&qu ...
- SQL2005中使用identity_insert向自动增量字段中写入内
摘自: http://www.aspbc.com/tech/showtech.asp?id=1117 SQL2005以前的数据库是不允许向自动增量字段中写入内容的,ACCESS也不行,但在SQL200 ...
- Use BEC to do mobile phone forensics
Belkasoft Evidence Center makes me very impressed that it supports lots of evidence type. I have to ...
- poj1840 哈希
虽然这题目我曾经在我们学校OJ上做过但是我那时候是用的暴力做的,这次我用的是哈希写的,我写这题目时候开始是在main函数里面写哈希感觉很麻烦很不清晰,然后我换用函数来写,清晰了很多,写完就AC了.用哈 ...