Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am trying to compile vim-7.3 will all features enabled. I ran configure with

$ ./configure --with-features=huge --enable-gui --enable-cscope
$ make ; make install

When I check the version, it shows several features are still not installed.

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 +conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con +diff +digraphs -dnd -ebcdic +emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path ....

Now according to vimdoc

N +browse
N +clientserver

It says

Thus if a feature is marked with "N", it is included in the normal, big and huge versions of Vim.

features.h also says

+huge all possible features enabled.

According to the above mentioned two resources, huge means all features are enabled. Even if not all, then at least +clientserver and +browse has to be enabled in huge compilation mode.

But my experience says otherwise. Huge compilation fails to include browse and clientserver feature.

  1. Why is it so? Is my understanding of the document is incorrect?
  2. How to enable clientserver feature?
  3. How to enable gui?
  4. Is it possible to enable all features simply? I tired huge as features.h suggested it will enable all possible features, but it didn't work.

Thanks for your time.

Edit: Problem solved!

Thanks to all of you guys for your priceless help.
I checked, vim73/src/auto/config.log, it was clear that lots of dependencies are missing. Gert post gave an idea which packages are required. I used:

$ yum -yv install libXt.i686 libXt-devel.i686 \
libXpm.i686 libXpm-devel.i686 \
libX11.i686 libX11-common.noarch libX11-devel.i686 \
ghc-cairo-devel.i686  cairo.i686   \
libgnomeui-devel.i686 \
ncurses.i686 ncurses-devel.i686  ncurses-libs.i686 ncurses-static.i686 \
ghc-gtk-devel.i686 gtk+-devel.i686 \
gtk2.i686  gtk2-devel.i686 \
atk-devel.i686 atk.i686 \
libbonoboui.i686 libbonoboui-devel.i686 

Some of the packages were already installed, others were not. After that:

$ ./configure --with-features=huge --enable-cscope --enable-gui=auto
$ make ; make install

Now my vim has all the packages associated with huge.

Huge version with GTK2 GUI. Features included (+) or not (-):
+arabic +autocmd +balloon_eval +browse ++builtin_terms +byte_offset +cindent
+clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
+conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con_gui +diff
+digraphs +dnd -ebcdic +emacs_tags +eval +ex_extra +extra_search +farsi


share|improve this question
It is possible you lack certain dependencies for those features. – Gert Oct 6 '10 at 13:33
@Gert: Thanks for the response. What could that be? Any idea? – Andrew-Dufresne Oct 6 '10 at 15:28
whats the output of your logfiles? ./configure for example? – echox Oct 7 '10 at 10:46
up vote 8 down vote accepted

According to this building Vim page, you'll need these dependencies on Ubuntu

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

Run configure again.

./configure --with-features=huge --enable-gui=gnome2 --enable-cscope

I've tried and all seemed to be enabled.

share|improve this answer

The test in feature.h is

#if (defined(WIN32) || defined(FEAT_XCLIPBOARD)) && defined(FEAT_EVAL)

so you have to make sure that FEAT_XCLIPBOARD is enabled. This is done here:

#if defined(FEAT_NORMAL) && defined(FEAT_VISUAL) \
        && (defined(UNIX) || defined(VMS)) \
        && defined(WANT_X11) && defined(HAVE_X11)
# endif

So it looks as if you miss some X11-devel package.

share|improve this answer

You need to look at the output of ./configure and at config.log.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.