Saturday, April 18, 2020

Re: Failed to compile vim with lua support.

Shlomi Fish <shlomif@shlomifish.org> 于2020年4月18日周六 下午8:18写道:
>
> Hi,
>
> On Sat, 18 Apr 2020 19:51:09 +0800
> Hongyi Zhao <hongyi.zhao@gmail.com> wrote:
>
> > No, still failed, see following:
> >
> > $ git clone https://github.com/shlomif/vim.git vim.git
>
> You are using the wrong git branch:
>
> https://github.com/shlomif/vim/tree/lua-moonjit-support
>
> execute "git checkout lua-moonjit-support"

Failed, see following:

$ git clean -xdf
$ git checkout lua-moonjit-support
$ git branch
* lua-moonjit-support
master
[...]
$ make -j1
[...]
/usr/bin/ld: objects/if_lua.o: in function `luaopen_vim':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2011:
undefined reference to `lua_setglobal'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2013:
undefined reference to `lua_getglobal'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2054:
undefined reference to `lua_setglobal'
/usr/bin/ld: objects/if_lua.o: in function `luaV_addlstring':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:651:
undefined reference to `luaL_prepbuffsize'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:647:
undefined reference to `luaL_prepbuffsize'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:649:
undefined reference to `luaL_prepbuffsize'
/usr/bin/ld: objects/if_lua.o: in function `luaV_setrange':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2071:
undefined reference to `lua_getglobal'
/usr/bin/ld: objects/if_lua.o: in function `luaV_print':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1595:
undefined reference to `lua_getglobal'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1600:
undefined reference to `lua_callk'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1604:
undefined reference to `luaL_prepbuffsize'
/usr/bin/ld: objects/if_lua.o: in function `luaV_debug':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1618:
undefined reference to `lua_getglobal'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1620:
undefined reference to `lua_rotate'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1633:
undefined reference to `lua_pcallk'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1627:
undefined reference to `lua_callk'
/usr/bin/ld: objects/if_lua.o: in function `luaV_newstate':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2064:
undefined reference to `lua_callk'
/usr/bin/ld: objects/if_lua.o: in function `luaV_luaeval':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1952:
undefined reference to `lua_pcallk'
/usr/bin/ld: objects/if_lua.o: in function `ex_lua':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2131:
undefined reference to `lua_pcallk'
/usr/bin/ld: objects/if_lua.o: in function `ex_luado':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2165:
undefined reference to `lua_callk'
/usr/bin/ld: /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2176:
undefined reference to `lua_pcallk'
/usr/bin/ld: objects/if_lua.o: in function `ex_luafile':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2208:
undefined reference to `lua_pcallk'
/usr/bin/ld: objects/if_lua.o: in function `set_ref_in_lua':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2247:
undefined reference to `lua_callk'
/usr/bin/ld: objects/if_lua.o: in function `lua_buffer_free':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2223:
undefined reference to `lua_callk'
/usr/bin/ld: objects/if_lua.o: in function `lua_window_free':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2224:
undefined reference to `lua_callk'
/usr/bin/ld: objects/if_lua.o: in function `do_luaeval':
/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2234:
undefined reference to `lua_callk'
collect2: error: ld returned 1 exit status
link.sh: Linking failed
make[1]: *** [Makefile:2115: vim] Error 1
make[1]: Leaving directory
'/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src'
make: *** [Makefile:29: first] Error 2




>
> > $ cd vim.git
> > $ ./configure \
> > --enable-fail-if-missing \
> > --enable-autoservername \
> > --enable-cscope \
> > --enable-fontset \
> > --enable-multibyte \
> > --enable-luainterp \
> > --enable-perlinterp \
> > --enable-pythoninterp=yes \
> > --enable-python3interp=yes \
> > --enable-rubyinterp \
> > --enable-tclinterp \
> > --with-tclsh=/usr/bin/tclsh \
> > --enable-gui=gtk3 \
> > --enable-terminal \
> > --enable-xim \
> > --with-x \
> > --with-luajit \
> > --with-lua-prefix=/usr/local \
> > --with-features=huge
> >
> > $ make -j1
> > [...]
> > /usr/bin/ld: objects/if_lua.o: in function `luaopen_vim':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2011:
> > undefined reference to `lua_setglobal'
> > /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2013:
> > undefined reference to `lua_getglobal' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2054:
> > undefined reference to `lua_setglobal' /usr/bin/ld: objects/if_lua.o: in
> > function `luaV_addlstring':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:651:
> > undefined reference to `luaL_prepbuffsize' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:647:
> > undefined reference to `luaL_prepbuffsize' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:649:
> > undefined reference to `luaL_prepbuffsize' /usr/bin/ld: objects/if_lua.o: in
> > function `luaV_setrange':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2071:
> > undefined reference to `lua_getglobal' /usr/bin/ld: objects/if_lua.o: in
> > function `luaV_print':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1595:
> > undefined reference to `lua_getglobal' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1600:
> > undefined reference to `lua_callk' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1604:
> > undefined reference to `luaL_prepbuffsize' /usr/bin/ld: objects/if_lua.o: in
> > function `luaV_debug':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1618:
> > undefined reference to `lua_getglobal' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1620:
> > undefined reference to `lua_rotate' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1633:
> > undefined reference to `lua_pcallk' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1627:
> > undefined reference to `lua_callk' /usr/bin/ld: objects/if_lua.o: in function
> > `luaV_newstate':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2064:
> > undefined reference to `lua_callk' /usr/bin/ld: objects/if_lua.o: in function
> > `luaV_luaeval':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:1952:
> > undefined reference to `lua_pcallk' /usr/bin/ld: objects/if_lua.o: in
> > function `ex_lua':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2131:
> > undefined reference to `lua_pcallk' /usr/bin/ld: objects/if_lua.o: in
> > function `ex_luado':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2165:
> > undefined reference to `lua_callk' /usr/bin/ld:
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2176:
> > undefined reference to `lua_pcallk' /usr/bin/ld: objects/if_lua.o: in
> > function `ex_luafile':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2208:
> > undefined reference to `lua_pcallk' /usr/bin/ld: objects/if_lua.o: in
> > function `set_ref_in_lua':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2247:
> > undefined reference to `lua_callk' /usr/bin/ld: objects/if_lua.o: in function
> > `lua_buffer_free':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2223:
> > undefined reference to `lua_callk' /usr/bin/ld: objects/if_lua.o: in function
> > `lua_window_free':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2224:
> > undefined reference to `lua_callk' /usr/bin/ld: objects/if_lua.o: in function
> > `do_luaeval':
> > /home/werner/Public/editor/vim/lua-moongit-support/vim.git/src/if_lua.c:2234:
> > undefined reference to `lua_callk' collect2: error: ld returned 1 exit status
> > link.sh: Linking failed
> > make[1]: *** [Makefile:2115: vim] Error 1
> > make[1]: Leaving directory
> > '/home/werner/Public/editor/vim/lua-moongit-support/vim.git/src'
> > make: *** [Makefile:29: first] Error 2
> >
> > Shlomi Fish <shlomif@shlomifish.org> 于2020年4月18日周六 下午7:37写道:
> > >
> > > Hi!
> > >
> > > On Sat, 18 Apr 2020 18:56:56 +0800
> > > Hongyi Zhao <hongyi.zhao@gmail.com> wrote:
> > >
> > > > Shlomi Fish <shlomif@shlomifish.org> 于2020年4月18日周六 下午6:28写道:
> > > > >
> > > > > Hi!
> > > > >
> > > > > CCing the list.
> > > > >
> > > > > On Sat, 18 Apr 2020 18:02:18 +0800
> > > > > Hongyi Zhao <hongyi.zhao@gmail.com> wrote:
> > > > >
> > > > > > Aonther thing to note: I installed moonjit to substitute the luajit
> > > > > > which is not-maintained now.
> > > > > >
> > > > > > See following:
> > > > > > $ luajit -v
> > > > > > moonjit 2.2.0 -- Copyright (C) 2019-2020 moonjit developers.
> > > > > > https://github.com/moonjit/moonjit
> > > > > >
> > > > >
> > > > > With this:
> > > > >
> > > > > ```
> > > > >
> > > > > ./configure \
> > > > > --enable-fail-if-missing \
> > > > > --enable-autoservername \
> > > > > --enable-cscope \
> > > > > --enable-fontset \
> > > > > --enable-multibyte \
> > > > > --enable-luainterp \
> > > > > --enable-perlinterp \
> > > > > --enable-pythoninterp=yes \
> > > > > --enable-python3interp=yes \
> > > > > --enable-rubyinterp \
> > > > > --enable-tclinterp \
> > > > > --with-tclsh=/usr/bin/tclsh \
> > > > > --enable-gui=gtk3 \
> > > > > --enable-terminal \
> > > > > --enable-xim \
> > > > > --with-x \
> > > > > --with-luajit \
> > > > > --with-lua-prefix=/usr \
> > > >
> > > > No, I use the self compiled lua/moonjit which installed under /usr/local:
> > > >
> > > > werner@ubuntu-01:~$ which lua
> > > > /usr/local/bin/lua
> > > > werner@ubuntu-01:~$ which luajit
> > > > /usr/local/bin/luajit
> > > >
> > >
> > > After using this to build moonjit git:
> > >
> > > ```
> > > #! /bin/sh
> > > #
> > > # moonjit.sh
> > > # Copyright (C) 2020 Shlomi Fish <shlomif@cpan.org>
> > > #
> > > # Distributed under terms of the MIT license.
> > > #
> > >
> > >
> > > make PREFIX="$HOME/apps/to-del-moonjit" all install
> > > ```
> > >
> > > and this to build vim:
> > >
> > > ```
> > > luajit_pref="$HOME/apps/to-del-moonjit"
> > > PATH="$luajit_pref/bin:$PATH"
> > > ./configure \
> > > --enable-fail-if-missing \
> > > --enable-autoservername \
> > > --enable-cscope \
> > > --enable-fontset \
> > > --enable-multibyte \
> > > --enable-luainterp \
> > > --enable-perlinterp \
> > > --enable-pythoninterp=yes \
> > > --enable-python3interp=yes \
> > > --enable-rubyinterp \
> > > --enable-tclinterp \
> > > --with-tclsh=/usr/bin/tclsh \
> > > --enable-gui=gtk3 \
> > > --enable-terminal \
> > > --enable-xim \
> > > --with-x \
> > > --with-luajit \
> > > --with-lua-prefix="$luajit_pref" \
> > > --with-features=huge
> > >
> > > ```
> > >
> > > I got:
> > >
> > > ```
> > > checking for Haiku... no
> > > checking for QNX... no
> > > checking for Darwin (Mac OS X)... no
> > > checking AvailabilityMacros.h usability... no
> > > checking AvailabilityMacros.h presence... no
> > > checking for AvailabilityMacros.h... no
> > > checking --with-local-dir argument... Defaulting to /usr/local
> > > checking --with-vim-name argument... Defaulting to vim
> > > checking --with-ex-name argument... Defaulting to ex
> > > checking --with-view-name argument... Defaulting to view
> > > checking --with-global-runtime argument... no
> > > checking --with-modified-by argument... no
> > > checking if character set is EBCDIC... no
> > > checking --disable-smack argument... no
> > > checking linux/xattr.h usability... yes
> > > checking linux/xattr.h presence... yes
> > > checking for linux/xattr.h... yes
> > > checking attr/xattr.h usability... no
> > > checking attr/xattr.h presence... no
> > > checking for attr/xattr.h... no
> > > checking --disable-selinux argument... no
> > > checking for is_selinux_enabled in -lselinux... yes
> > > checking selinux/selinux.h usability... yes
> > > checking selinux/selinux.h presence... yes
> > > checking for selinux/selinux.h... yes
> > > checking --with-features argument... huge
> > > checking --with-compiledby argument... no
> > > checking --disable-xsmp argument... no
> > > checking --disable-xsmp-interact argument... no
> > > checking --enable-luainterp argument... yes
> > > checking --with-lua-prefix argument... /home/shlomif/apps/to-del-moonjit
> > > checking --with-luajit... yes
> > > checking for luajit... /home/shlomif/apps/to-del-moonjit/bin/luajit
> > > checking LuaJIT version... moonjit 2.2.0 -- Copyright (C) 2019-2020 moonjit
> > > developers. https://github.com/moonjit/moonjit checking Lua version of
> > > LuaJIT... 5.1 checking if lua.h can be found in
> > > /home/shlomif/apps/to-del-moonjit/include/luajit-moonjit 2.2.0 -- Copyright
> > > (C) 2019-2020 moonjit developers. https://github.com/moonjit/moonjit...
> > > checking if lua.h can be found in
> > > /home/shlomif/apps/to-del-moonjit/include... no checking if lua.h can be
> > > found in /home/shlomif/apps/to-del-moonjit/include/lua5.1... no configure:
> > > error: could not configure lua [shlomif@telaviv1 vim-git]$ ```
> > >
> > > So my guess is that vim and moonjit are not compatible with each other.
> > >
> > > YOu can try my fix at
> > > https://github.com/shlomif/vim/tree/lua-moonjit-support (note the branch)
> > > which seems to work.
> > > > > --with-features=huge
> > > > >
> > > > > ```
> > > > >
> > > > > vim builds fine on mageia v8 x64. But I changed the lua-prefix to /usr
> > > > > and using mageia's luajit.
> > > > >
> > > > > > Hongyi Zhao <hongyi.zhao@gmail.com> 于2020年4月18日周六
> > > > > > 下午5:59写道:
> > > > > > >
> > > > > > > Shlomi Fish <shlomif@shlomifish.org> 于2020年4月18日周六
> > > > > > > 下午3:20写道:
> > > > > > > >
> > > > > > > > Hi Hongyi Zhao!
> > > > > > > >
> > > > > > > > On Sat, 18 Apr 2020 08:09:57 +0800
> > > > > > > > Hongyi Zhao <hongyi.zhao@gmail.com> wrote:
> > > > > > > >
> > >
> > > --
> > >
> > > Shlomi Fish https://www.shlomifish.org/
> > > https://youtu.be/KxGRhd_iWuE - Never Give Up!!
> > >
> > > Sometimes you don't need to be familiar with a better alternative to know
> > > that something sucks. Take Microsoft Word for example.
> > > — Shlomi Fish's friend.
> > >
> > > Please reply to list if it's a mailing list post - https://shlom.in/reply .
> > >
> > > --
> > > --
> > > You received this message from the "vim_use" maillist.
> > > Do not top-post! Type your reply below the text you are replying to.
> > > For more information, visit http://www.vim.org/maillist.php
> > >
> > > ---
> > > You received this message because you are subscribed to the Google Groups
> > > "vim_use" group. To unsubscribe from this group and stop receiving emails
> > > from it, send an email to vim_use+unsubscribe@googlegroups.com. To view
> > > this discussion on the web visit
> > > https://groups.google.com/d/msgid/vim_use/20200418143646.1dc5de35%40telaviv1.shlomifish.org.
> > >
> >
> >
> >
>
>
>
> --
>
> Shlomi Fish https://www.shlomifish.org/
> https://is.gd/i5eMQd - Emma Watson's Interview for a Software Dev Job
>
> He has a high degree of idealism, a high degree of stubbornness, and an even
> higher degree of inability to distiniguish between the two.
> — https://www.shlomifish.org/humour.html
>
> Please reply to list if it's a mailing list post - https://shlom.in/reply .



--
Hongyi Zhao <hongyi.zhao@gmail.com>

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/CAGP6POL_cvMny5vYqNj1yjVq8qXYitR%3DeFJ%2BObxZwOV3QVghKA%40mail.gmail.com.

No comments: