配置vim时遇到问题--with-features = huge

时间:2013-03-10 19:28:31

标签: vim

我使用mercurial克隆了vim源,并运行了以下命令:

make distclean
./configure --with-features=huge
make 
sudo make install

所有这些命令的输出似乎正常。 然而,我的vim --version的输出缺少应该在./configure(例如xterm_clipboard)时启用的功能。我该如何诊断这个问题?我的目标是启用netbeans_intg

VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Mar 23 2010 12:50:41)
Included patches: 1-315
Modified by <bugzilla@redhat.com>
Compiled by <bugzilla@redhat.com>
Huge version without GUI.  Features included (+) or not (-):
+arabic +autocmd -balloon_eval -browse ++builtin_terms +byte_offset +cindent
-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
+cryptv +cscope +cursorshape +dialog_con +diff +digraphs -dnd -ebcdic
+emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path
+float +folding -footer +fork() +gettext -hangul_input +iconv +insert_expand
+jumplist +keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap
+menu +mksession +modify_fname +mouse -mouseshape +mouse_dec +mouse_gpm
-mouse_jsbterm +mouse_netterm -mouse_sysmouse +mouse_xterm +multi_byte
+multi_lang -mzscheme -netbeans_intg -osfiletype +path_extra +perl +postscript
+printer +profile +python +quickfix +reltime +rightleft +ruby +scrollbind
+signs +smartindent -sniff +startuptime +statusline -sun_workshop +syntax
+tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse
+textobjects +title -toolbar +user_commands +vertsplit +virtualedit +visual
+visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup
-X11 -xfontset -xim -xsmp -xterm_clipboard -xterm_save
   system vimrc file: "/etc/vimrc"
     user vimrc file: "$HOME/.vimrc"
      user exrc file: "$HOME/.exrc"
  fall-back for $VIM: "/etc"
 f-b for $VIMRUNTIME: "/usr/share/vim/vim72"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H     -O2 -g -pipe -Wall  -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64  -D_FORTIFY_SOURCE=1    -D_REENTRANT -D_GNU_SOURCE   -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm  -I/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE  -I/usr/local/include/python2.6 -pthread  -I/opt/local/ruby-1.8.7/lib/ruby/1.8/x86_64-linux
Linking: gcc   -L.  -rdynamic -Wl,-export-dynamic  -Wl,-E -Wl,-rpath,/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE   -L/usr/local/lib -o vim       -lselinux  -lncurses -lacl -lgpm   -Wl,-E -Wl,-rpath,/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE  /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/auto/DynaLoader/DynaLoader.a -L/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE -lperl -lresolv -lutil -lc -L/usr/local/lib/python2.6/config -lpython2.6 -lutil -Xlinker -export-dynamic  -lruby-static -lm

3 个答案:

答案 0 :(得分:5)

你确定你正在运行你构建的vim,而不是你系统上已有的另一个vim吗?在任何情况下,vim都不是使用任何GUI(X11)支持构建的,正如您在日志中Huge version without GUI所看到的那样。

包含huge并不能为您提供所有功能;它只会让你获得很多。如果您想要X11和xterm_clipboard,请确保指定X11构建选项。对于基于GTK的系统,您可以执行以下操作:

./configure --with-features=huge --enable-gui=gtk2

这将为您提供大部分X11 /图形功能。如果您不使用GTK2,则必须指定其他内容;查看./configure --help以获取功能列表。

您需要安装各种GTK / X11(或您使用的任何GUI)开发库,以便使用GUI支持进行构建。它可能正在尝试使用X11支持进行构建,但是您没有正确的库。查看您的configure输出错误。

你的操作系统可能有一个预先构建的二进制文件,其中包含你需要的所有功能,正如其他人所建议的那样,但我发现我最终总是需要为一件事或另一件事编译它,所以值得搞清楚。如果您提供有关正在运行的操作系统的更多信息(如果是OSX,哪个补充包系统),某人可能会提供特定于操作系统的二进制包建议。

答案 1 :(得分:2)

如果在巨大的版本中没有启用某些功能,那可能是由于缺少依赖项。 configure脚本会运行大量检测,并在缺少相应的库或...-devel包时跳过某些功能。最简单的安装方法是通过

$ sudo apt-get build-dep vim-gnome # Debian-based
$ sudo yum-builddep vim-gnome # Redhat

对于Netbeans集成,romainl在他的评论中可能是正确的,这只适用于GVIM(但也应该使用您的调用构建)。

答案 2 :(得分:2)

How can I diagnose this problem?

这样做的方法是手动回顾./configure输出,看看它找不到的东西。要做到这一点,并且因为输出不是真正“用户友好”,你必须向后滚动并扫描输出以“no”结尾的行,如:

checking if X11 header files can be found... no

^会向您发出信号,您需要安装某种X11开发包等。

也许您需要GUI支持才能启用netbeans?我在Huge version without GUI部分看到了“没有GUI”部分。

手动执行此操作需要一些努力和试验/错误。因为实际上要在GUI支持中编译它,你必须安装一堆不同的包来获得所有正确的开发头文件(至少从我个人的经验来看!)。就像人们说过的那样,尝试搜索和安装X11开发包,以及一个gtk2-devel包^^

(我觉得有一点我很沮丧