当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 14 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 如何成功编译VIM支持lua
帖子发表于 : 2016-08-07 21:08 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
安装参考的帖子:http://www.jianshu.com/p/3e0c242310d3

已安装的依赖如下:
代码:
sudo apt-get install \
    python-dev \
    python3-dev \
    ruby-dev \
    liblua5.2-dev \
    liblua5.3-dev \
    libperl-dev \
    libtcl8.6 \
    libgnomeui-dev \
    libx11-dev \
    libxt-dev \
    libxpm-dev


使用的命令如下:
代码:
 $ ./configure \                                                                                                                                                                                         [20:58:26]
    --prefix=/usr/local/ \
    --with-features=huge \
    --enable-multibyte \
    --enable-cscope=yes \
    --enable-perlinterp=yes \
    --enable-rubyinterp=yes \
    --with-ruby-command=/usr/bin/ruby \
    --enable-luainterp=yes \
    --enable-pythoninterp=yes \
    --enable-python3interp=yes \
    --enable-tclinterp=yes \
    --enable-gui=auto \
    --enable-gnome-check \
    --enable-sniff \
    --enable-xim \
    --enable-fontset \
    --with-x \
    --with-compiledby=$USER \
    --enable-fail-if-missing


提示报错如下:
代码:
checking --with-lua-prefix argument... no
checking LUA_PREFIX environment var... not set, default to /usr
checking --with-luajit... no
checking for lua... no
checking if lua.h can be found in /usr/include... no
checking if lua.h can be found in /usr/include/lua... no
configure: error: could not configure lua


实际lua.h的位置在/usr/include/lua5.3/或/usr/include/lua5.2/,就算把/usr/include/lua5.3复制为/usr/include/lua,成功找到lua.h,还是会继续报错:
代码:
checking if link with -L/usr/lib -llua is sane... no

于是不知道怎么办好了……


最后由 zfovly216 编辑于 2016-08-09 13:56,总共编辑了 1 次

页首
 用户资料  
 
2 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-07 21:48 
头像

注册: 2008-09-18 13:11
帖子: 2805
送出感谢: 1
接收感谢: 460
直接安裝vim-nox/vim-gtk/vim-gtk3就有lua支持了
代码:
$ vim.nox --version | grep lua
+dialog_con      +lua             +rightleft       +windows
Linking: gcc   -L. -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o vim        -lm -ltinfo -lnsl  -lselinux  -lacl -lattr -lgpm -ldl  -L/usr/lib -llua5.2 -Wl,-E  -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/x86_64-linux-gnu/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt  -L/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu -lpython3.5m -lpthread -ldl -lutil -lm -L/usr/lib/x86_64-linux-gnu -ltcl8.6 -ldl -lz -lpthread -lieee -lm -lruby-2.3 -lpthread -lgmp -ldl -lcrypt -l


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-07 22:05 
头像

注册: 2009-04-11 23:46
帖子: 4149
系统: Arch Linux
送出感谢: 11
接收感谢: 125
如果你用最新的 Vim 源码还是报错,可以去提交一下 bug 报告。

当然,先看一下 config.log 确认一下确实是 Vim 的构建系统没有找到头/库文件,而不是别的什么问题。


_________________
我的博客 https://blog.lilydjwg.me/
提问的智慧
Arch Linux 中文论坛

我的vimrc: https://git.io/vimrc


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 10:07 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
astolia 写道:
直接安裝vim-nox/vim-gtk/vim-gtk3就有lua支持了
代码:
$ vim.nox --version | grep lua
+dialog_con      +lua             +rightleft       +windows
Linking: gcc   -L. -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E  -Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o vim        -lm -ltinfo -lnsl  -lselinux  -lacl -lattr -lgpm -ldl  -L/usr/lib -llua5.2 -Wl,-E  -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/x86_64-linux-gnu/perl/5.22/CORE -lperl -ldl -lm -lpthread -lcrypt  -L/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu -lpython3.5m -lpthread -ldl -lutil -lm -L/usr/lib/x86_64-linux-gnu -ltcl8.6 -ldl -lz -lpthread -lieee -lm -lruby-2.3 -lpthread -lgmp -ldl -lcrypt -l


很少用带GUI的VIM,而且自己编译想要什么支持都可以实现,某种程度更加方便点


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 10:17 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
lilydjwg 写道:
如果你用最新的 Vim 源码还是报错,可以去提交一下 bug 报告。

当然,先看一下 config.log 确认一下确实是 Vim 的构建系统没有找到头/库文件,而不是别的什么问题。


源码足够新了
代码:
commit 7547a78446c1a3c04b36c0533f0f046188bd378b
Author: Bram Moolenaar <Bram@vim.org>
Date:   Mon Aug 8 23:26:51 2016 +0200

    patch 7.4.2187
    Problem:    glob2regpat test fails on Windows.
    Solution:   Remove the checks that use backslashes.


的确是找不到头文件与库文件,上面也贴了
代码:
checking --enable-luainterp argument... yes
checking --with-lua-prefix argument... no
checking LUA_PREFIX environment var... not set, default to /usr
checking --with-luajit... no
checking for lua... no
checking if lua.h can be found in /usr/include... no
checking if lua.h can be found in /usr/include/lua... no
configure: error: could not configure lua


我发个issues问问


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 15:51 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
lilydjwg 写道:
如果你用最新的 Vim 源码还是报错,可以去提交一下 bug 报告。

当然,先看一下 config.log 确认一下确实是 Vim 的构建系统没有找到头/库文件,而不是别的什么问题。

开发者也没有什么好办法,最后各种软链接解决了。

再问一下编译好带有python支持了(+python/dyn,+python3/dyn),为什么还会提示:Error: Required vim compiled with +python


页首
 用户资料  
 
7 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 17:28 
头像

注册: 2009-04-11 23:46
帖子: 4149
系统: Arch Linux
送出感谢: 11
接收感谢: 125
zfovly216 写道:
lilydjwg 写道:
如果你用最新的 Vim 源码还是报错,可以去提交一下 bug 报告。

当然,先看一下 config.log 确认一下确实是 Vim 的构建系统没有找到头/库文件,而不是别的什么问题。

开发者也没有什么好办法,最后各种软链接解决了。

再问一下编译好带有python支持了(+python/dyn,+python3/dyn),为什么还会提示:Error: Required vim compiled with +python


加载失败了?没有报错说加载失败什么的么?


_________________
我的博客 https://blog.lilydjwg.me/
提问的智慧
Arch Linux 中文论坛

我的vimrc: https://git.io/vimrc


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 17:46 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
lilydjwg 写道:
加载失败了?没有报错说加载失败什么的么?


查了一下是说如果vim要同时支持python和python3,那么只会在同一时间动态加载其中一个,不知道是根据什么来决定的,反正每次加载的都是python3,后来在编译的时候把python3的支持去掉了就好了


页首
 用户资料  
 
9 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 17:47 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
lilydjwg 写道:
如果你用最新的 Vim 源码还是报错,可以去提交一下 bug 报告。

当然,先看一下 config.log 确认一下确实是 Vim 的构建系统没有找到头/库文件,而不是别的什么问题。


实际上正确的方法是安装lua5.2,而不仅仅是liblua5.2-dev,configure脚本会使用lua命令来检查lua的版本以及头文件和库文件的路径,会自动修正问题。


页首
 用户资料  
 
10 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 21:35 
头像

注册: 2009-04-11 23:46
帖子: 4149
系统: Arch Linux
送出感谢: 11
接收感谢: 125
zfovly216 写道:
lilydjwg 写道:
加载失败了?没有报错说加载失败什么的么?


查了一下是说如果vim要同时支持python和python3,那么只会在同一时间动态加载其中一个,不知道是根据什么来决定的,反正每次加载的都是python3,后来在编译的时候把python3的支持去掉了就好了


是根据操作系统来决定的。Arch Linux 上的 Vim 可以同时支持 Python 2 和 3。Ubuntu 上的只能支持先被加载的那个,因为它的 Python 编译时没有加 --enable-shared。


_________________
我的博客 https://blog.lilydjwg.me/
提问的智慧
Arch Linux 中文论坛

我的vimrc: https://git.io/vimrc


页首
 用户资料  
 
11 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-09 21:36 
头像

注册: 2009-04-11 23:46
帖子: 4149
系统: Arch Linux
送出感谢: 11
接收感谢: 125
zfovly216 写道:
lilydjwg 写道:
如果你用最新的 Vim 源码还是报错,可以去提交一下 bug 报告。

当然,先看一下 config.log 确认一下确实是 Vim 的构建系统没有找到头/库文件,而不是别的什么问题。


实际上正确的方法是安装lua5.2,而不仅仅是liblua5.2-dev,configure脚本会使用lua命令来检查lua的版本以及头文件和库文件的路径,会自动修正问题。


原来是这样……Arch Linux 用户从来没遇到过这种问题。


_________________
我的博客 https://blog.lilydjwg.me/
提问的智慧
Arch Linux 中文论坛

我的vimrc: https://git.io/vimrc


页首
 用户资料  
 
12 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-10 15:52 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
lilydjwg 写道:
zfovly216 写道:
lilydjwg 写道:
加载失败了?没有报错说加载失败什么的么?


查了一下是说如果vim要同时支持python和python3,那么只会在同一时间动态加载其中一个,不知道是根据什么来决定的,反正每次加载的都是python3,后来在编译的时候把python3的支持去掉了就好了


是根据操作系统来决定的。Arch Linux 上的 Vim 可以同时支持 Python 2 和 3。Ubuntu 上的只能支持先被加载的那个,因为它的 Python 编译时没有加 --enable-shared。

是这样吗?我看vim的manual不是这么写得,貌似跟python与python3的符号表怎么的有关,导致同一时间只能加载一个。Arch上echo has('python')和echo has('python3')都是1么?


页首
 用户资料  
 
13 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-10 20:38 
头像

注册: 2009-04-11 23:46
帖子: 4149
系统: Arch Linux
送出感谢: 11
接收感谢: 125
我记得是这样的。

Arch 官方编译的我不太清楚。我的 vim-lily / gvim-lily 是两个都能同时加载的。曾经我也在 Ubuntu 上自行编译 Python 和 Vim 来同时支持过两者。


_________________
我的博客 https://blog.lilydjwg.me/
提问的智慧
Arch Linux 中文论坛

我的vimrc: https://git.io/vimrc


页首
 用户资料  
 
14 楼 
 文章标题 : Re: 如何成功编译VIM支持lua
帖子发表于 : 2016-08-11 8:54 

注册: 2013-07-01 13:40
帖子: 27
系统: windows 7
送出感谢: 0 次
接收感谢: 0 次
lilydjwg 写道:
我记得是这样的。

Arch 官方编译的我不太清楚。我的 vim-lily / gvim-lily 是两个都能同时加载的。曾经我也在 Ubuntu 上自行编译 Python 和 Vim 来同时支持过两者。

厉害[emoji1303]


从我的 iPhone 发送,使用 Tapatalk


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 14 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译