vim bash kabuğuna başlamıyor


1

Terminalim (FREE BSD) vhell'in iyi çalıştığı CShell'i varsayılan olarak kullanıyor. Ancak bazı test komut dosyalarını çalıştırmak için, bazı env değişkenlerimin tanımlandığı bash kabuğunu kullanmalıyım. Bash kabuğuna girdiğimde, vim başlatırsam, bu hatayı veriyor.

/libexec/ld-elf.so.1: Shared object "libgtk-12.so.2" not found, required by "vim"

vi olsa iyi çalışıyor.

Yanıtlar:


2

Mantıklı bir açıklama, hangi kabuğu kullandığınıza bağlı olarak, farklı ortam değişken ayarlarına sahip olduğunuzdur. Çıktısını karşılaştırın

echo $PATH
echo $LD_LIBRARY_PATH

bash altında ve csh altında. Belki csh'deyken $LD_LIBRARY_PATHkonumunu da içerir, libgtk-12.so.2ancak bash'deyken değildir. Belki de csh ve bash'da $PATHfarklı bir vimçalıştırılabilir dosyaya yol açar (bir bashta gtk gerektiren ve csh içinde gtk gerektirmeyen). Bunu kontrol etmek için, type vimbash which vimaltında ve csh altında çalıştırın .

DÜZENLEME : yorumlarınıza dayanarak, orada var vimiçinde /volume/perl/bin/vimsizin için çalışmaz, ama aynı zamanda bir şey gerekiyor /volume/perl/binilk gelip PATHmuhtemelen perl. Birkaç çözümünüz var:

  • Put /volume/perl/bin/vimilk $PATHve koyun alias vim=/usr/local/bin/vimsenin içinde .bashrcve sizin .cshrc.

  • Koymayın /volume/perl/bin/vimiçinde $PATHhiç ama birlikte perl komut dosyalarını çalıştırmak için düzenlemek /volume/perl/bin/vimiçin yerel Perl yerine.

  • Koymayın /volume/perl/bin/vimiçinde $PATHhiç. Bunun yerine, koyun ~/binilk $PATHve ne gerek sembolik bağ oluşturma /volume/perl/biniçinde ~/bin, örneğin ln -s /volume/perl/bin/perl ~/bin.

  • Belirlemeyi deneyin PERL5LIBve PATHsize Perl ancak bazı ekstra kütüphanelerin daha yeni bir sürümü değil ne gerek durumunda. Örneğin setenv PERL5LIB /volume/perl/lib/perl/5.10(hangi dizine ihtiyaç duyarsanız ayarlayın; varsayılan dizinleri /volume/perl/bin/perlçalıştırarak görebilirsiniz /volume/perl/bin/perl -le 'map print, @INC').

  • Perl'inizi, komut dosyalarınızın onlarla çalışabilmesi için yükseltin (belki önceki öneriye ek olarak).

  • İhtiyacınız olan kütüphaneleri yükleyin /volume/perl/bin/vim.

  • Kaldır vimdan /volume/perl/bin.

Ne yaparsanız yapın, PATHfarklı mermilerde farklı ayarlara sahip olmanızı önermiyorum , çok hızlı bir şekilde kafa karıştırıcı oluyor (fark ettiğiniz gibi). Set PATHiçinde .login(varsayarak cshaksi de, giriş kabuktur .profile).


yes.my $ PATH yukarıdaki yorumumda görebileceğiniz gibi problemi yaratan perl kütüphaneleri için birkaç yol daha var.
woodstok

0

Terminalden bahsediyorsunuz, ancak şikayet ettiği kütüphane bir GUI kütüphanesi. GUI'yi önemsiyor musunuz? değilse, hiçbir gui zorlayabilir ve bu lib'i yüklemeye çalışamazsınız, ama ben bir vim gurusundan çok uzaktayım. DISPLAY'inizi bile ayarlayabilirsiniz, vim terminal modunda çalışmalıdır.

Diğerlerinin cevapladığı gibi, muhtemelen LD_LIBRARY_PATH, ya da düşündüğünden farklı bir vim kullanıyorsun. Hem bash hem de csh'de nelerin ayarlandığını ve farkları görün

Ayrıca lddkomutu deneyin, uygulamanızın hangi kitaplıkları yükleyebileceğini gösterir. çözmek için bash'de başarısız olmalı

Birçok sistemde, vi ve vim, genel düzenleme için daha fazla özelliklere sahip vim ve acil durum modu için vi olarak adlandırılan çok az bağımlılık sürümünden oluşan iki ayrı kurulumdur. Eminim vi de çalışacaktır.

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.