【问题标题】:Build Vim with lua on Debian 7.8在 Debian 7.8 上使用 lua 构建 Vim
【发布时间】:2016-10-09 22:46:55
【问题描述】:

我正在尝试自己构建它,因为 debian apt-get 中的版本对于我需要的插件来说太旧了,而且这个插件需要 lua。

我做了apt-get install libtolua-dev

并且正在运行命令

./configure --with-features=huge \
        --enable-rubyinterp \
        --enable-pythoninterp \
        --with-python-config-dir=/usr/lib/python2.7/config \
        --enable-perlinterp \
        --enable-gui=gtk2 --enable-cscope --prefix=/usr \
        --enable-luainterp \

当我运行这个命令时,当我实际安装了 5.2 版时,有时程序会说checking Lua version... (cached) 5.0.3。当我运行配置时,我得到:

checking for lua... (cached) /usr/bin/lua
checking if lua.h can be found in /usr/include... no
checking if lua.h can be found in /usr/include/lua5.0.3... no

所以我尝试将所有文​​件从 /usr/include/lua5.2 复制到新目录 /usr/include/lua5.0.3 然后我会得到

checking if lua.h can be found in /usr/include... no
checking if lua.h can be found in /usr/include/lua5.0.3... yes
checking if link with -L/usr/lib -llua5.0.3 is sane... no

我不明白如何让它使用 lua 5.2。

【问题讨论】:

  • 复制是一个错误。你应该永远不要像这样在/usr 中乱来。你只会成功地混淆和/或破坏你的系统。
  • 插件需要什么版本的vim?软件包中提供了哪些版本的 vim? vim 支持 lua 5.2 吗?
  • 插件需要 7.3.885 或更高版本并支持 lua(它是 neocomplete) 使用 apt get 我得到版本 7.3.547-7 我不知道如何找到 Vim 是否支持 lua 5.2
  • 7.4.488wheezy-backports 中可用。
  • 我刚试过这个,但是这个版本还是没有lua(-lua)

标签: vim lua debian


【解决方案1】:

对于那些对我用 lua 支持构建 vim 的方式感兴趣的人,以及在完整的 Neocomplete 支持下设置 spf13 的坚实基础,以下是执行此操作的步骤:

  1. 从 git 下载 vim 源代码:

    git clone https://github.com/vim/vim.git
    
  2. 设置依赖项(在 ArchLinux 上,根据您的发行版进行调整):

    pacman -Suy ruby perl python2 python lua luajit
    
  3. 为编译链接 luajit 头文件:

    cd /usr/local/include
    sudo ln -sv /usr/include/luajit-2.0/lua.h
    sudo ln -sv /usr/include/luajit-2.0/luaconf.h
    sudo ln -sv /usr/include/luajit-2.0/lualib.h
    sudo ln -sv /usr/include/luajit-2.0/lauxlib.h
    
  4. 运行以下命令来构建 vim(根据需要包括 lua 支持):

    ./configure --with-features=huge --enable-multibyte --enable-rubyinterp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config --enable-gui=no --without-x enable-cscope --enable-multibyte --enable-fontset --enable-largefile --enable-cscope --enable-perlinterp --enable-luainterp --enable-fail-if-missing --with-lua-prefix=/usr/local/  --with-luajit --prefix=/usr
    
  5. 编译:

    make VIMRUNTIMEDIR=/usr/share/vim/vim80
    
  6. 安装 Vim:

    sudo make install
    
  7. 使用 vim --version 命令验证 lua 支持(+lua):

    vim --version
    

就是这样!

【讨论】:

    【解决方案2】:

    您需要在运行配置时包含--with-lua-prefix=<dir> 标志。这个标志告诉配置脚本 lua 的安装位置。 (如果不传递标志,也可以设置LUA_PREFIX 环境变量)。


    我还建议使用 --enable-fail-if-missing 运行 configure,这样配置脚本就会失败,而不是悄悄警告它没有找到 lua 配置目录或可执行文件。

    【讨论】:

    • 问题是 checking if lua.h can be found in /usr/include/lua5.2/include... no checking if lua.h can be found in /usr/include/lua5.2/include/lua5.0.3... no configure: error: could not configure lua 当我设置 --with-lua-prefix=/usr/include/lua5.2 当我设置 LUA_PREFIX=/usr/include/lua5.2 时没有任何反应
    猜你喜欢
    • 2013-10-28
    • 1970-01-01
    • 2016-11-06
    • 1970-01-01
    • 2014-09-10
    • 2015-12-09
    • 1970-01-01
    • 1970-01-01
    • 2012-05-25
    相关资源
    最近更新 更多