Як вказати MacVim на праву перл на OSX 10.10?


1

Коли я намагаюся використовувати MacVim з командного рядка, я отримую

dyld: Library not loaded: /System/Library/Perl/5.12/darwin-thread-multi-2level/CORE/libperl.dylib
Referenced from: /Applications/MacVim.app/Contents/MacOS/Vim
Reason: image not found
Trace/BPT trap: 5

Я спробував brew install -update perl, але потім виявив, що питання не в Perl. Саме там дивиться Вім.

$ ls /usr/local/opt/perl/lib/
5.20.1

Я спробував brew install -update macvim, але версія Perl з командного рядка теж не працює.

MBP:mysite $ perl -v

This is perl 5, version 18, subversion 2 (v5.18.2) built for darwin-thread-multi-2level

Підсумок: у мене MacVim шукає Perl версії 5.12; У мене є термінал, що використовує Perl 5.18.2; У мене встановлена ​​версія 5.20.1. Як я все повторюю?

 $ ls -l /usr/bin/perl*
-rwxr-xr-x   1 root  wheel  58416 Sep  9  2014 /usr/bin/perl
-rwxr-xr-x   1 root  wheel  35600 Sep  9  2014 /usr/bin/perl5.16
-rwxr-xr-x   1 root  wheel  35600 Sep  9  2014 /usr/bin/perl5.18
-rwxr-xr-x  38 root  wheel    811 Sep  9  2014 /usr/bin/perlbug
...

Я знайшов це пов'язане питання , на яке не було відповіді.

Відповіді:


5

У мене є рішення, не чудове, але воно працює для виправлення MacVim.

brew uninstall macvim
brew install macvim
brew linkapps macvim

Працювали для мене. Сподіваємось, відповідне вище питання стане відповіддю на мою проблему версії Perl.


1

Я вирішив цю проблему після оновлення до 10.11, і прийняте рішення не працювало для мене. Я виявив, що проблема полягає не в оновленій установці MacVim, а в тому, що сценарій mvim знаходив старий бінарний файл MacVim, якого я навіть не знав, а не щойно оновлений.

Отже, якщо хтось потрапив у цю проблему, і вищевказане виправлення не працює, уважно подивіться на цей рядок у вашому висновку про помилку:

  Referenced from: /Applications/MacVim.app/Contents/MacOS/Vim

і переконайтеся, що він посилається на розташування MacVim, ви очікуєте його використання!

(Шахта знаходила його в ~ / bin /)


0

Ви можете спробувати зв'язати Perl 5.18 як 5.12:

sudo ln -s /System/Library/Perl/5.18 /System/Library/Perl/5.12

Це допоможе вирішити проблему Perl, але це призвело до наступної помилки:

mvim
dyld: Library not loaded: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/libruby.1.dylib
  Referenced from: /Applications/MacVim.app/Contents/MacOS/Vim
  Reason: image not found

Це потенційно більша проблема, оскільки більша ймовірність несумісності між бібліотеками Ruby 1.8 та Ruby 2.0.

ll /System/Library/Frameworks/Ruby.framework/Versions/
total 4.0K
drwxr-xr-x 7 root 238 Jul  3 16:39 2.0
lrwxr-xr-x 1 root   3 Jul  3 14:18 Current -> 2.0

У цей момент я відмовився і застосував вищевказаний метод, який спрацював чудово.


1
Це жахлива ідея; не роби цього. Бібліотеки Perl 5.12 та 5.18 не сумісні; з'єднання їх разом призведе до химерних помилок згодом.
сутінки

0

brew link perl або brew link --overwrite perl

перед встановленням або підключенням програми також слід працювати, і це, мабуть, першопричина проблеми.

Крім того, це набагато більш чисто і менш ризиковано, що грати з посиланнями на різні версії

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.