我正在尝试通过在vim存储库根目录中运行./configure && make
来使用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'
在研究这个问题时,我遇到了this post on the vim_use Google Groups, 它描述了完全相同的问题。它有一个回复,建议搜索MinGW curses包。 我找到了a repository of MinGW packages,但那里没有任何傻瓜。而且,他们真的很老 - 最新的 2003年更新。
如果我切换到src
目录并从那里运行make
,那么构建过程
启动并完成witHout错误。它会生成一些可执行文件(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
使用使用runtime
文件夹中的内容构建的exe,我可以
可能自己拼凑一个发行版,但它会是hackish和脆弱的。
我更愿意知道造成这些错误的原因,以及如何修复它们。
答案 0 :(得分: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
期望您指定不带空格的路径。还有其他恼人的问题,但我不想在这里详细介绍它们。
如果您正在为Windows寻找新的64位Vim版本,那么我建议您尝试直接从Bram源代码编译的 Vim for Windows ,它包括对两者的支持Python 2和Python 3。
注意:我使用 MinGW-w64 构建了它。
祝你好运。答案 1 :(得分:1)
我刚刚在MinGW上编译了VIM并创建了 gist about it 。要使配置运行,您需要
mingw-get install mingw32-libpdcurses
然后你可以做
./configure --with-tlib=pdcurses
但无济于事,因为make
无法完成任务。
gist 会引导您使用gvim74.exe,您可以像下载的那样安装它。
答案 2 :(得分:0)
根据this site,可以在MinGW下编译。您是否尝试过使用Make_ming.mak
Makefile?