vim 无法加载动态库

vim 无法加载动态库

我刚刚升级了 brew:brew updatebrew upgrade结果它坏了vim。运行vim出现此错误:

dyld: Library not loaded: /usr/local/opt/perl/lib/perl5/5.26.2/darwin-thread-multi-2level/CORE/libperl.dylib  
Referenced from: /usr/local/Cellar/vim/8.1.0050/bin/vim
Reason: image not found
Abort trap: 6

现在,.../perl5/5.26.2已被覆盖.../perl5/5.28.0。如何更新vim依赖项?

答案1

这个问题困扰了好几天。不知道是谁干了什么可怕的事情,但是:

您可以switch(此外pin)使用以下版本的brew软件包:

$ brew info perl  # lists all the perl version installed
$ brew switch perl 5.26.2
$ brew pin perl  # don't let `brew update` change this

然后,我收到一个关于python损坏/不可用的错误......

$ brew info python
$ brew switch python 3.6.5  # 3.7.0 appears to break things
$ brew pin python

现在,vim可能在任何版本上都可以工作(例如8.1.0150),但如果不行,我猜你可以尝试不同的版本,直到有一个版本可以工作...:

$ brew info vim
$ brew switch vim 8.1.0001
$ brew pin vim

答案2

我遇到了同样的问题,但能够保留最新的自制版本并维持vim功能。

首先,homebrew作为升级的一部分,将 Python 从 3.6 升级到 3.7 vim(不确定需要什么切换来防止这种情况发生)。发生这种情况时,您将“丢失”所有模块pip(它们并没有丢失,只是没有移植到新的安装路径,最好事先进行,pip3 freeze > pip3.txt这样您就可以轻松恢复您的工作模块集)。

接下来,为了vim正确启动,我需要在 Homebrew 中重新安装 perl。这会重新运行makemake install步骤,我猜这提供了 vim 正在寻找的库链接。

我最初在另一台机器上使用brew switch ...移回 Perl 5.26.2 的方法,但该方法在这台主机上不起作用。不过,重新安装确实有效。现在,最新版本可以vim与最新版本python和一起正常启动perl

相关内容