Gibt es einen Unterschied zwischen "sudo apt-get vim" und "./configure --with-features = riesig"?

10

Ich möchte VIM über apt-get installieren, bin mir aber nicht sicher, ob ich alle Funktionen bekomme.

Gibt es einen Unterschied zwischen dem und dem Kompilieren aus dem Quellcode?

AmagicalFishy
quelle

Antworten:

15

Wenn Sie sich die Optionen ansehen, mit denen die verschiedenen Pakete (in debian/rules) erstellt wurden, werden Sie sehen

OPTFLAGS+=--with-features=huge

...

NOINTERPFLAGS:=--disable-luainterp
NOINTERPFLAGS+=--disable-mzschemeinterp
NOINTERPFLAGS+=--disable-perlinterp
ifeq ($(DEB_VENDOR),Ubuntu)
    NOINTERPFLAGS+=--enable-pythoninterp --with-python-config-dir=$(shell python-config --configdir)
else
    NOINTERPFLAGS+=--disable-pythoninterp
endif
NOINTERPFLAGS+=--disable-python3interp
NOINTERPFLAGS+=--disable-rubyinterp
NOINTERPFLAGS+=--disable-tclinterp

ALLINTERPFLAGS:=--enable-luainterp
ALLINTERPFLAGS+=--disable-mzschemeinterp
ALLINTERPFLAGS+=--enable-perlinterp
ALLINTERPFLAGS+=--enable-pythoninterp --with-python-config-dir=$(shell python-config --configdir)
ALLINTERPFLAGS+=--disable-python3interp
ALLINTERPFLAGS+=--enable-rubyinterp
ALLINTERPFLAGS+=--enable-tclinterp
ALLINTERPFLAGS+=--with-tclsh=/usr/bin/tclsh

...

CFLAGS_vim-basic:=$(CFLAGS)
CFGFLAGS_vim-basic:=$(CFGFLAGS) $(OPTFLAGS) $(NOXFLAGS) $(NOINTERPFLAGS)

CFLAGS_vim-tiny:=$(CFLAGS) -DTINY_VIMRC
CFGFLAGS_vim-tiny:=$(CFGFLAGS) $(TINYFLAGS)

CFLAGS_vim-gtk:=$(CFLAGS)
CFGFLAGS_vim-gtk:=$(CFGFLAGS) $(OPTFLAGS) $(GUIFLAGS) $(GTKFLAGS) $(ALLINTERPFLAGS)

CFLAGS_vim-gnome:=$(CFLAGS)
CFGFLAGS_vim-gnome:=$(CFGFLAGS) $(OPTFLAGS) $(GUIFLAGS) $(GNOMEFLAGS) $(ALLINTERPFLAGS)

CFLAGS_vim-athena:=$(CFLAGS)
CFGFLAGS_vim-athena:=$(CFGFLAGS) $(OPTFLAGS) $(GUIFLAGS) $(ATHENAFLAGS) $(ALLINTERPFLAGS)

CFLAGS_vim-nox:=$(CFLAGS)
CFGFLAGS_vim-nox:=$(CFGFLAGS) $(OPTFLAGS) $(NOXFLAGS) $(ALLINTERPFLAGS)

Damit:

  • Alle Pakete außer werden vim-tinymit erstellt--with-features=huge
  • vim-basic(aka vim) hat Dolmetscher ausgeschaltet
  • Die anderen haben Optionen basierend auf dem Frontend, wobei die Dolmetscher aktiviert sind.

Um einen auszuwählen:

  • Wenn Sie einen Barebone-Vim möchten, wählen Sie vim-tiny.
  • Wenn Sie ein Vim mit mehr Funktionen wünschen, wählen Sie vim.
  • Wenn Sie alle Funktionen möchten , die die Verpackung zulässt, aber keine GUI (und die Abhängigkeiten einer GUI) möchten, wählen Sie vim-nox.
  • Wenn Sie eine grafische Benutzeroberfläche wünschen und nichts mit GTK zu tun haben möchten, wählen Sie vim-athena.
  • Wenn Sie eine grafische Benutzeroberfläche wünschen und eine GNOME-basierte Desktop-Umgebung (GNOME, Unity, Cinnamon usw.)vim-gnome verwenden möchten , wählen Sie eine GTK3-basierte Umgebung (GNOME, Unity, Cinnamon, MATE usw.) aus vim-gtk3.
  • Wenn Sie eine grafische Benutzeroberfläche wünschen und eine GTK2-basierte oder Nicht-GTK-Desktop-Umgebung (XFCE, LXDE usw.) verwenden möchten, wählen Sie vim-gtk.
muru
quelle
Ich würde dies gerne als Antwort akzeptieren, aber als ich die Frage stellte, war ich nicht registriert.
AmagicalFishy
@AmagicalFishy Wenn Sie sich mit einer anderen E-Mail registriert haben, können Sie die Konten zusammenführen.
Muru
Ich habe mich tatsächlich mit derselben E-Mail registriert. Ich habe sogar eine Benachrichtigung erhalten, dass diese Antwort veröffentlicht wurde - aber aus irgendeinem Grund gibt es kein Häkchen beim Akzeptieren und Antworten.
AmagicalFishy
@AmagicalFishy auf den ersten Blick, es scheint, dass ich nichts als Mod tun kann, sorry. Sie müssen sich an das Stack Exchange-Team wenden , wie unter vi.stackexchange.com/help/merging-accounts angegeben .
Muru
1
Obwohl :help gui-gnomeist ziemlich veraltet. Auf dem modernen Gnome gibt es nicht viel, was vim-gnome bietet (vgl. Debian-Fehler # 820239 ), weshalb ich es entfernt habe.
Jamessan
5

In der Tat verfügt die Version, mit der Sie arbeiten, apt-get install vimnicht über alle Funktionen einer Version, mit der Sie kompiliert wurden --with-features=huge. Zum Beispiel haben Sie nicht immer Optionen wie +pythonoder +lua.

Eine gute Alternative ist die Verwendung, apt-get install vim-noxdie viel vollständiger ist.

statox
quelle
4

$ sudo apt-get install vim-gtk(oder vim-gnomewenn Sie auf Ubuntu sind) erhalten Sie das vollständigste Vim mit dem geringsten Aufwand.

Offizielle Pakete bleiben normalerweise etwas zurück. Wenn Sie also wirklich die neueste Version möchten, müssen Sie die neuesten Patches anwenden und selbst erstellen.

Beachten Sie jedoch, dass alle paar Tage neue Patches erscheinen. Um mit dem Upstream Schritt zu halten, ist Engagement erforderlich.

romainl
quelle
1
Die PPA von pi-rho enthält im Allgemeinen sehr aktuelle Pakete.
Muru
@muru, vereinbart und empfohlen. Das habe ich verwendet, als ich Ubuntu verwendet habe.
Romainl