Kaynaklardan gvim derlensin mi?


12

Son zamanlarda vimşu şekilde yükledim :

hg clone https://vim.googlecode.com/hg/ vim
cd vim
sudo ./configure --enable-rubyinterp=yes --enable-pythoninterp=yes --enable-gui=gtk2 --prefix=/opt/vim
make 
make install
make install clean

Yani, VIM'imin ikili dosyaları artık altında yaşıyor /opt/vim/bin. İşte ls -labu dir:

$ ls -la /opt/vim/bin
total 1500
drwxr-xr-x 2 root root    4096 2011-05-25 12:46 .
drwxr-xr-x 4 root root    4096 2011-05-25 12:46 ..
lrwxrwxrwx 1 root root       3 2011-05-25 12:46 ex -> vim
lrwxrwxrwx 1 root root       3 2011-05-25 12:46 rview -> vim
lrwxrwxrwx 1 root root       3 2011-05-25 12:46 rvim -> vim
lrwxrwxrwx 1 root root       3 2011-05-25 12:46 view -> vim
-rwxr-xr-x 1 root root 1504188 2011-05-25 12:46 vim
lrwxrwxrwx 1 root root       3 2011-05-25 12:46 vimdiff -> vim
-rwxr-xr-x 1 root root    2084 2011-05-25 12:46 vimtutor
-rwxr-xr-x 1 root root   13900 2011-05-25 12:46 xxd

Nerede benim vim.gtk? --enable-gui=gtk2Configure ı belirtmiştim . Yükleyicinin konsol uygulamasının yanı sıra GUI sürümünü istediğimi söylememeli mi?

gtkSürümü doğru olarak belirttim :

$ dpkg -l libgtk[0-9]* | grep ^i
ii  libgtk2-perl                          1:1.221-4                                  Perl interface to the 2.x series of the Gimp Toolkit library
ii  libgtk2.0-0                           2.18.3-1ubuntu2.2                          The GTK+ graphical user interface library
ii  libgtk2.0-bin                         2.18.3-1ubuntu2.2                          The programs for the GTK+ graphical user interface library
ii  libgtk2.0-common                      2.18.3-1ubuntu2.2                          Common files for the GTK+ graphical user interface library

GÜNCELLEME : src / INSTALL

 88 Unix: COMPILING WITH/WITHOUT GUI
 89
 90 NOTE: This is incomplete, look in Makefile for more info.
 91
 92 These configure arguments can be used to select which GUI to use:
 93 --enable-gui=gtk      or: gtk2, motif, athena or auto
 94 --disable-gtk-check
 95 --disable-motif-check
 96 --disable-athena-check
 97
 98 --enable-gui defaults to "auto", so it will automatically look for a GUI (in
 99 the order of GTK, Motif, then Athena).  If one is found, then is uses it and
100 does not proceed to check any of the remaining ones.  Otherwise, it moves on
101 to the next one.

Bu yüzden --enable-guihangi GUI motorunu / araç setini tek başına kullanacağını umarak belirtmemeye çalıştım ... Yine de aynı sonuç :(

GÜNCELLEME : Ayrıca:

/opt/vim/bin$ ./vim -g
E25: GUI cannot be used: Not enabled at compile time

GÜNCELLEME :

Bunların TÜMÜ ihtiyacım var:

$ sudo aptitude search gtk | grep dev
p   gnunet-gtk-dev                  - secure, trust-based peer-to-peer framework
v   gtkgl-dev                       -                                           
p   gtkparasite                     - GTK+ debugging and development tool       
p   libaiksaurusgtk-1.2-dev         - graphical interface to the Aiksaurus toolk
v   libaiksaurusgtk-dev             -                                           
p   libcanberra-gtk-dev             - a simple abstract interface for playing ev
p   libchamplain-gtk-0.4-dev        - A Gtk+ widget to display maps (development
p   libclutter-gtk-0.10-dev         - Open GL based interactive canvas library G
p   libdbusmenu-gtk-dev             - Menus over DBus shared library for GTK    
p   libempathy-gtk-dev              - High-level library and user-interface for 
v   libequeue-gtk2-ocaml-dev        -                                           
p   libexif-gtk-dev                 - Library providing GTK+ widgets to display/
p   libgalago-gtk-dev               - libraries and header files for developing 
p   libgdu-gtk-dev                  - GTK+ standard dialog library for libgdu - 
p   libggadget-gtk-1.0-dev          - Google Gadgets GTK+ development files     
p   libggz-gtk-dev                  - GGZ Gaming Zone: core client embedding lib
p   libghc6-gtk-dev                 - A GUI library for Haskell (Gtk2Hs) -- GTK+
p   libghc6-gtkglext-dev            - A GUI library for Haskell (Gtk2Hs) -- gtkg
p   libghc6-gtksourceview2-dev      - A GUI library for Haskell (Gtk2Hs) -- GtkS
p   libghc6-soegtk-dev              - A GUI library for Haskell (Gtk2Hs) -- soeg
p   libglrr-gtk-dev                 - Development library of Grift (gtk)        
p   libgpod-nogtk-dev               - development files for libgpod (version wit
p   libgtk-directfb-2.0-dev         - Development files for the GTK+ library - D
p   libgtk-vnc-1.0-dev              - A VNC viewer widget for GTK+ (development
i   libgtk2.0-dev                   - Development files for the GTK+ library
p   libgtkada2-dev                  - Development files for libgtkada2
p   libgtkdatabox-0.9.0-1-dev       - A Gtk+ library to display large amounts of
v   libgtkdatabox-dev               -
p   libgtkextra-x11-2.0-dev         - A useful set of widgets for GTK+ (developm
p   libgtkgl2.0-dev                 - OpenGL area for GTK (development files)
p   libgtkglext1-dev                - OpenGL Extension to GTK+ (development file
p   libgtkglextmm-x11-1.2-dev       - C++ bindings for GtkGLExt (Development fil
p   libgtkhex0-dev                  - GNOME Hex editor for files (development he
p   libgtkhtml-editor-dev           - HTML rendering/editing library - editor wi
p   libgtkhtml2-dev                 - HTML rendering/editing library - developme
p   libgtkhtml3.14-dev              - HTML rendering/editing library - developme
p   libgtkhtml3.8-dev               - HTML rendering/editing library - developme
p   libgtkimageview-dev             - image viewer widget for GTK+ (development
p   libgtkmathview-dev              - rendering engine for MathML documents
p   libgtkmm-2.4-dev                - C++ wrappers for GTK+ 2.4 (development fil
p   libgtkmm-utils-dev              - utility functions, classes and widgets wri
p   libgtksourceview-dev            - development files for the GTK+ syntax high
p   libgtksourceview2.0-dev         - development files for the GTK+ syntax high
p   libgtksourceviewmm-1.0-dev      - C++ binding of GtkSourceView - development
p   libgtksourceviewmm-2.0-dev      - C++ binding of GtkSourceView - development
p   libgtkspell-dev                 - Development files for GtkSpell
p   libindicate-gtk-dev             - GNOME panel indicator applet - shared libr
p   libjana-gtk-dev                 - A set of GTK+ widgets to visualise libjana
p   liblablgtk2-gl-ocaml-dev        - OCaml bindings to GtkGL
p   liblablgtk2-gnome-ocaml-dev     - OCaml bindings to GNOME
p   liblablgtk2-ocaml-dev           - OCaml bindings to Gtk+ version 2
p   liblablgtkmathview-ocaml-dev    - OCaml bindings for libgtkmathview, a GTK w
p   liblablgtksourceview-ocaml-dev  - OCaml bindings for libgtksourceview, a sou
v   libnotify-dev-gtk2.10           -
p   libocamlnet-gtk2-ocaml-dev      - OCaml application-level Internet libraries
p   libpolkit-gtk-1-dev             - PolicyKit GTK+ API - development files
v   libsylpheed-claws-gtk2-dev      -
p   libtinymailui-gtk-dev           - Framework for mobile applications with e-m
p   libtinymailui-gtkhtml-dev       - Framework for mobile applications with e-m
p   libtracker-gtk-dev              - GTK+ widgets for apps that use tracker - d
v   libunicapgtk-dev                -
p   libunicapgtk2-dev               - graphical widgets for unicap - development
p   libwxgtk2.6-dev                 - wxWidgets Cross-platform C++ GUI toolkit (
p   libwxgtk2.8-dev                 - wxWidgets Cross-platform C++ GUI toolkit (
p   libzbargtk-dev                  - scanning and decoding bar codes (GTK+ bind
p   python-galago-gtk-dev           - Galago presence library (Python interface)
p   python-gtk2-dev                 - GTK+ bindings: devel files
p   telepathy-devel-gtk             - Telepathy Development packages for GTK

İhtiyacım olmayan bu paketlerin çoğuna benziyor. Örneğin mobil uygulamalar için çerçeveler, ... HTML oluşturucular vb. Yüklediğim libgtk2.0-dev... Yine de gVIMderleyemiyorum .... Agrhhhhh


Neden "sudo ./configure [...]" yapıyorsunuz? Configure betiğinin root olarak çalıştırılması gerekmez. Ben "sudo make isntall" yapmayı anlayabiliyorum, ancak "install" yapmanıza ve daha sonra "install clean" yapmanıza gerek yok.
Ocak'ta Heptit

Bir grup rastgele dev dosyası yüklemenize gerek yoktur. Configure betiği ihtiyacı olan kütüphaneleri bulamazsa, bir makefile çıktısını almayı reddeder. . Sorununuzun configurekendisi olduğu anlaşılıyor. Kontrol config.logedip --enable-guiseçeneği nasıl ele aldığını
görecektim

Yanıtlar:


7

Centos 6.2'ye (x86_64) gvim 7.3'ü yüklerken benzer bir sorun yaşadım

Gerekli bazı devel paketleri eksikti. Bunları kurmak için:

yum groupinstall "Desktop Platform Development"

[Mevcut tüm grupları görüntülemek için: yum grouplist]

Sonra kaynağından bina yeni çalıştı

wget ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2
bunzip2 vim-7.3.tar.bz2
tar xf vim-7.3.tar
cd vim73

./configure --prefix=/home/me/vim73
make
make install

Hangi dosyaların eksik olduğunu keşfetmek için:

./configure | less

ve 'gui' araması X11 ile ilgili başlıkların eksik olduğunu gösterdi.


4

In ubuntu ben derleme vim şu şekilde:

sudo apt-get build-dep vim
sudo apt-get build-dep libx11-dev libxtst-dev

make distclean

./configure --with-compiledby="David Gamba <davidgamba@gambaeng.com>" \
--with-features=huge \
--enable-gui=auto \
--with-x \
--enable-rubyinterp \
--with-ruby-command=/usr/bin/ruby \
--enable-perlinterp \
--enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config \
--enable-fontset \
--enable-cscope \
--enable-gtk2-check \
--enable-gnome-check

make

Bu noktada cd srcdoğru X11 ve pano desteği ve çek: ./vim --version. Sonra:

sudo make install

For Fedora (KDE masaüstü kullanarak) aşağıdaki paketleri yüklü:

yum install gcc libX11-devel libXtst-devel ncurses-devel perl-ExtUtils-Embed ruby ruby-devel python-devel gtk2-devel libXt-devel

Ve configure komutumu şu şekilde değiştirdim:

./configure --with-compiledby="David Gamba <davidgamba@gambaeng.com>" \
--with-features=huge \
--enable-gui=auto \
--with-x \
--enable-rubyinterp \
--with-ruby-command=/usr/bin/ruby \
--enable-perlinterp \
--enable-pythoninterp --with-python-config-dir=/usr/lib64/python2.7/config \
--enable-fontset \
--enable-cscope \
--enable-gtk2-check \
--enable-gnome-check \
--enable-fail-if-missing

Bundan sonra aşağıdakileri alıyorum:

gvim --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled May  4 2014 19:43:27)
Included patches: 1-274
Compiled by David Gamba <davidgamba ...>

DÜZENLEME: Fedora için xsubppperl betiğinin konumu ile ilgili bir hata alıyordum, bu yüzden çevrimiçi bazı hata raporu sayesinde Makefile değiştirdi sona erdi bahsetmeyi unuttum .

--- a/src/Makefile      Fri May 02 15:46:14 2014 +0200
+++ b/src/Makefile      Sun May 04 19:56:20 2014 -0600
@@ -2465,7 +2465,7 @@

 auto/if_perl.c: if_perl.xs
        $(PERL) -e 'unless ( $$] >= 5.005 ) { for (qw(na defgv errgv)) { print "#define PL_$$_ $$_\n" }}' > $@
-       $(PERL) $(PERLLIB)/ExtUtils/xsubpp -prototypes -typemap \
+       $(PERL) /usr/bin/xsubpp -prototypes -typemap \
            $(PERLLIB)/ExtUtils/typemap if_perl.xs >> $@

  auto/osdef.h: auto/config.h osdef.sh osdef1.h.in osdef2.h.in

2

Gvim için gerekli bağımlılıkları bulmak için aşağıdaki komutu kullanabilirsiniz:

sudo apt-get build-dep vim

Source.list dosyanıza / etc / apt / dizininde kaynak havuzu eklemediyseniz, bu dosyayı açabilir, içindeki girişleri çoğaltabilir ve "dep" i "dep-src" olarak değiştirebilirsiniz.

Tüm bağımlılıklar yüklendikten sonra, vi'yi gui ile derleyebileceksiniz.


1

Bu, yeterli *-develpaket kurulmamış gibi görünüyor . Tüm devel paketlerini kurmayı deneyin. Bence çoğu yüklemek için bir meta-paket var. Deneyin gnome-devel. Üzgünüm şu anda yakınlarda Ubuntu yok.

Farklı vim varyantlarını (örneğin GUI ve GUI olmayan) derlemek için, onu birden çok kez yapılandırmanız / derlemeniz gerekir.


Unix benzeri sistemlerde, ayrı GUI ve GUI olmayan sürümler oluşturmak için bir neden yoktur. Ve adlı tek ikili yaratacak yüklemek Bir "normal" inşa vimVim-- diğer her türlü hangi gvim, view, exvb .-- bağlantılıdır. Vim, çağrıldığı isme göre hangi kişiliğin benimseneceğini bilir.
garyjohn

Haklısın, sen yok olması için. Ancak dağıtımların çoğunda GUI ve GUI olmayan varyantlar için farklı ikili paketlerde bulunan ayrı derlemeler bulunur. A minimalve full featuredversiyon gibi bir şey . OP de bunu yapmak istiyor gibiydi.
Keith


Bununla birlikte, Keith'e bazı geliştirme paketlerini kaçırmış gibi göründüğüne katılıyorum. Belirli bir hedefin yapı bağımlılıklarını yükleyecek bir apt-get komutu var, ancak şu anda da kullanışlı bir Ubuntu sistemim yok.
garyjohn

1
Yine de, gtk + GUI'nin oluşturulmasını istediniz, bu yüzden yüklü tüm gtk devel paketlerine ihtiyacınız olacak. gnome-devel, onları çekecek bir meta pakettir. Daha küçük, gtk'ye özgü bir paket olabilirler. Ama şimdi kontrol edemiyorum.
Keith

1

Ayrıca X11 / Intrinsic.h eksikliği nedeniyle RHEL6.1 üzerinde enable-gui seçeneği ile vim73 inşa edemedi . Linux'unuzda içerme dosyası var mı? Değilse, bunu libxt-dev paketinden alabilirsiniz.


0

Vim derlerken çıktıyı izleyin. Kendimi vim derlemedim ama gvim için gerekli olan eksik dosyalarla ilgili bazı uyarılar / hatalar olacağından eminim.


Ne yazık ki size bir şey eksik olduğunu söylediğinde, hangi paketin bunu sağladığını veya sağlayan kütüphanenin adı olduğunu söylemez, bu yüzden bundan biraz daha fazlasını vermeniz gerekir.
DavidG
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.