使用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 ...
随机推荐
- 初探接口测试框架--python系列4
点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...
- 基本的git命令
git是一个分布式管理工具,可以用于代码的管理和维护(每次更新,修改,增加,删除); -->初始化一个仓库 git init 然后会在你所在的文件夹中添加一个隐藏文件.git(这是一个本地数据库 ...
- 慕课网-安卓工程师初养成-4-11 Java循环跳转语句之 break
来源:http://www.imooc.com/code/1431 生活中,我们经常会因为某些原因中断既定的任务安排.如在参加 10000 米长跑时,才跑了 500 米就由于体力不支,需要退出比赛.在 ...
- OSGI.NET 学习笔记--应用篇
关于osgi.net ,想必大家也听说过,以下是自己在学习osgi.net 过程中整理出来的内容,供大家学习参与使用. 1. OSGI.NET 与UIOSP OSGi是Open Service Ga ...
- php和apache安装心得
又一次安装apache和php~~ 又一次心碎的体验~ 本想参考之前的apache配置之间进行安装(在windows 下编辑,然后传到linux上),怎耐,一直有问题,打开浏览器直接进行下载.发现是浏 ...
- 学习总结 java 输入输出流
思维导图 代码实际演示 package com.hanqi.io; import java.io.*; public class Test1 { public static void main(Str ...
- jQuery插件开发方式
一.jQuery扩展 1.$.extend(object) 类似于.Net的扩展方法,用于扩展jQuery.然后就可以用$.的方式调用. $(function(){ $.extend({ fun1: ...
- jquery的end(),addBack()方法example
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 使用/proc实现内核与用户空间通信
1. 前言 Linux内核空间与用户空间的通信可通过"/proc"目录的文件读写来实现,如果只是控制内核中的参数而不是传输较多数据的话,用“/proc”是很合适的.另外一种内核 ...
- PHP超时处理全面总结(转)
[ 概述 ] 在PHP开发中工作里非常多使用到超时处理到超时的场合,我说几个场景: 1. 异步获取数据如果某个后端数据源获取不成功则跳过,不影响整个页面展现 2. 为了保证Web服务器不会因为当个页面 ...