8

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
...

Thanks

3
  • It is possible you lack certain dependencies for those features.
    – Gert
    Oct 6, 2010 at 13:33
  • @Gert: Thanks for the response. What could that be? Any idea? Oct 6, 2010 at 15:28
  • whats the output of your logfiles? ./configure for example?
    – echox
    Oct 7, 2010 at 10:46

3 Answers 3

10

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.

4

The test in feature.h is

#if (defined(WIN32) || defined(FEAT_XCLIPBOARD)) && defined(FEAT_EVAL)
# define FEAT_CLIENTSERVER
#endif

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)
# define FEAT_XCLIPBOARD
# ifndef FEAT_CLIPBOARD
#  define FEAT_CLIPBOARD
# endif
#endif

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

3

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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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