【问题标题】:Build Vim with lua on Linux Mint在 Linux Mint 上使用 lua 构建 Vim
【发布时间】:2013-10-28 15:33:53
【问题描述】:

这就是我所做的:

# Install lua
curl -R -O http://www.lua.org/ftp/lua-5.2.2.tar.gz
tar zxf lua-5.2.2.tar.gz
cd lua-5.2.2
sudo make linux install

# build vim
sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \
libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev ruby-dev mercurial
sudo apt-get remove vim vim-runtime gvim
sudo apt-get remove vim-tiny vim-common vim-gui-common
cd ~
hg clone https://code.google.com/p/vim/
cd vim
./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 \
            --with-lua-prefix=/usr/local/bin/lua
make VIMRUNTIMEDIR=/usr/share/vim/vim74
sudo make install

但是./configure 步骤返回:

checking --enable-luainterp argument... yes
checking --with-lua-prefix argument... /usr/local/bin/lua
checking --with-luajit... no
checking for lua... (cached) /usr/local/bin/lua
checking Lua version... (cached) 5.2
checking if lua.h can be found in /usr/local/bin/lua/include... no
checking if lua.h can be found in /usr/local/bin/lua/include/lua5.2... no

我可以验证在那些位置找不到 lua.h,但我不知道在哪里可以找到它。

【问题讨论】:

  • 你确实需要头文件,大概在一个名为 lua-dev 的包中(在 Ubuntu 下,我假设它是 libtolua-dev,我不确定它在 Mint 中会是什么)。
  • 我试过sudo apt-get install lua50 liblua50-dev liblualib50-dev,但是./configure 步骤出错了。这让我不愿意遵循任何不完整的建议。
  • 奇怪的是configure 正在查看/usr/local/bin/lua/include/ 而不是/usr/local/include/
  • @lhf,我想那是因为--with-lua-prefix=/usr/local/bin/lua
  • 默认在 /usr/local/bin/include 中查找。

标签: vim build lua linux-mint


【解决方案1】:

编辑

我又试了一次,遇到了问题,发现了一个包vim-nox,它已经支持vim了。

原答案

我不完全确定我最终是如何做到这一点的,但感谢 @wrikken 关于标题的提示。

# Install lua from binaries (these are out-of-date but at least they worked).
sudo apt-get install lua50 liblua50-dev liblualib50-dev

# Remove old vims
sudo apt-get remove vim vim-runtime gvim
sudo apt-get remove vim-tiny vim-common vim-gui-common

# Download and build a new vim
sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \
libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev ruby-dev mercurial
cd ~
hg clone https://code.google.com/p/vim/
cd vim
cd ~/vim
./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 \
            --with-lua-prefix=/usr/local

此时,查看./configure的输出,看看是否找到了lua.h。如果没有,找出它在哪里(恐怕我不记得它在哪里了)。在 /usr/local 中使用符号链接到它,例如sudo ln -s ../lua.h 并重新运行 ./configure.

最后:

sudo make VIMRUNTIMEDIR=/usr/share/vim/vim74       
sudo make install

如果还是不行,可以在某个论坛上发帖,然后去户外散步。你会发现它突然开始表现。

【讨论】:

  • 在我的 debian wheezy 安装中,此文件位于 /usr/include/lua50/lua.h。您可以使用find /usr -name lua.h 找到它。
  • 也许你可以在你有管理员权限的机器上为你没有权限的机器编译 vim。
  • @Werner 您可以使用--prefix 安装在任何地方(包括您自己的家)。例如:./configure [other options] --prefix=/home/werner/bin/vim
【解决方案2】:

什么对我有用:

sudo apt-get install liblua5.1-dev

将所有文件从/usr/include/lua5.1/复制到/usr/include/lua5.1/include/

sudo ln -s /usr/lib/x86_64-linux-gnu/liblua5.1.so /usr/local/lib/liblua.so

进入vim源文件夹

 cd src
 make distclean
 clear
 ./configure --with-features=huge --enable-cscope --enable-pythoninterp=yes --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu --enable-multibyte --enable-fontset --enable-gui=gnome2 --disable-netbeans --enable-luainterp=yes --with-lua-prefix=/usr/include/lua5.1 --enable-largefile --enable-rubyinterp
 sudo make
 sudo make install

这也将安装 GUI 版本,如果您只在命令行中使用它,请删除 --enable-gui=gnome2

其中大部分是我在here找到的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-07
    • 1970-01-01
    • 2016-12-06
    • 2018-10-12
    • 1970-01-01
    相关资源
    最近更新 更多