4

我正在尝试通过./configure && make在 vim 存储库根目录中运行来使用 MinGW 构建 vim,但出现以下错误:

checking --with-tlib argument... empty: automatic terminal library selection
checking for tgetent in -ltinfo... no
checking for tgetent in -lncurses... no
checking for tgetent in -ltermlib... no
checking for tgetent in -ltermcap... no
checking for tgetent in -lcurses... no
no terminal library found
checking for tgetent()... configure: error: NOT FOUND!
      You need to install a terminal library; for example ncurses.
      Or specify the name of the library with --with-tlib.
C:\pdev\MinGW\bin\sed.exe: -e expression #1, char 1: unknown command: `C'

在研究这个问题时,我在 vim_use Google Groups 上看到了这篇文章,它描述了完全相同的问题。它有一个回复,建议搜索 MinGW curses 包。我找到了 MinGW packages 的存储库,但那里没有 ncurses。此外,它们真的很旧——最新的更新于 2003 年。

如果我切换到src目录并make从那里运行,则构建过程将启动并完成但出现错误。它会生成一些可执行文件(gvim.exe、vim.exe 和更多)并将它们转储到 中src,但不会创建正确的分发。

完整发行版的目标位于根 Makefile 中,例如dosbin_gvim,但在尝试构建此目标时出现错误:

$ make dosbin_gvim
rm -rf dist/gvim73.zip
rm -rf dist/vim
mkdir dist/vim
mkdir dist/vim/vim73
tar cf - \
        README_bindos.txt uninstal.txt  \
        | (cd dist/vim/vim73; tar xf -)
find dist/vim/vim73 -type f -exec vim -e -X -u no_title.vim -c ":set tx|wq" {} \;
cp gvim.exe dist/vim/vim73/gvim.exe
cp: cannot stat `gvim.exe': No such file or directory
make: *** [dosbin_gvim] Error 1

使用用文件夹中的东西构建的 exe runtime,我可能自己拼凑出一个发行版,但它会很笨拙且脆弱。我宁愿知道是什么导致了这些错误,以及如何修复它们。

4

2 回答 2

3

在 Windows 上构建 Vim 非常令人沮丧。不要使用configure. 您应该Make_ming.mak直接使用,例如:

make -f Make_ming.mak ARCH=x86-64 OPTIMIZE=MAXSPEED STATIC_STDCPLUS=yes FEATURES=HUGE GUI=yes OLE=yes NETBEANS=no PYTHON="D:/Applications/Python 2.7.3" PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON3="D:/Applications/Python 3.2.3" PYTHON3_VER=32 DYNAMIC_PYTHON3=yes gvim.exe

很可能,您必须修补Make_ming.mak,因为它包含许多细微的错误。例如,"D:/Applications/Python 3.2.3"如果不打补丁,指定(如上所示)将不起作用,因为Make_ming.mak希望您指定不带空格的路径。还有其他烦人的问题,但我不想在这里详细介绍它们。

如果您正在寻找全新的 64 位版本的 Vim for Windows,那么我建议您尝试直接从 Bram 的源代码编译的我的Vim for Windows,它包括对 Python 2 和 Python 3 的支持。

注意:我使用MinGW-w64构建了它。

祝你好运。

于 2012-12-20T19:44:26.427 回答
1

我刚刚在 MinGW 上编译了 VIM 并做了一个要点。为了配置运行,您将需要

    mingw-get install mingw32-libpdcurses

然后你可以做

    ./configure --with-tlib=pdcurses

但无济于事,因为make不会做它的工作。

要点将引导您到 gvim74.exe,您可以使用它来安装,就像下载的一样。

于 2014-01-19T20:18:11.303 回答