【发布时间】:2020-06-28 13:46:26
【问题描述】:
我正在尝试在我的 spacemacs 编辑器中编辑一个 ruby 文件。
当我打开 ruby 文件时,我会得到以下调试信息:
[rbenv] Using the currently activated ruby.
evil-line-move: End of buffer
Suspicious state from syntax checker ruby: Flycheck checker ruby returned 1, but its output contained no errors: ruby: /usr/lib/x86_64-linux-gnu/libcrypt.so.1: version `XCRYPT_2.0' not found (required by /home/sfernandez/.rbenv/versions/2.7.0/lib/libruby.so.2.7)
Try installing a more recent version of ruby, and please open a bug report if the issue persists in the latest release. Thanks!
我已经尝试过这篇文章的解决方案:
https://ubuntuforums.org/showthread.php?t=2375927
我在将目录更改为/usr/lib/x86_64-linux-gnu后尝试这样做
sudo mv libcrypt.so.1 libcrypt.so.1.old
执行此行后,我无法使用sudo 执行任何命令。并收到错误:sudo: account validation failure, is your account locked。只需刷新使用 Pop!_OS 安装我的系统,我就能够再次获得 sudo 访问权限,我猜移动 libcrypt.so.1 的链接会导致一些不好的事情发生,所以不会再这样做了。
我确信这一切都说得通,但我觉得我遗漏了一些东西,这应该不难解决。希望有任何关于这方面的指导。
如果有帮助,这里是我的系统信息,neofetch
///////////// sfernandez@pop-os
///////////////////// -----------------
///////*767//////////////// OS: Pop!_OS 20.04 LTS x86_64
//////7676767676*////////////// Host: Inspiron 7559 1.3.1
/////76767//7676767////////////// Kernel: 5.4.0-7634-generic
/////767676///*76767/////////////// Uptime: 9 mins
///////767676///76767.///7676*/////// Packages: 1763 (dpkg), 20 (flatpak)
/////////767676//76767///767676//////// Shell: bash 5.0.16
//////////76767676767////76767///////// Resolution: 1920x1080, 1920x1080
///////////76767676//////7676////////// DE: GNOME
////////////,7676,///////767/////////// WM: Mutter
/////////////*7676///////76//////////// WM Theme: Pop
///////////////7676//////////////////// Theme: Pop [GTK2/3]
///////////////7676///767//////////// Icons: Pop [GTK2/3]
//////////////////////'//////////// Terminal: gnome-terminal
//////.7676767676767676767,////// CPU: Intel i5-6300HQ (4) @ 3.200GHz
/////767676767676767676767///// GPU: Intel HD Graphics 530
/////////////////////////// GPU: NVIDIA GeForce GTX 960M
///////////////////// Memory: 2328MiB / 7828MiB
/////////////
在做了更多的工作之后,我对符号链接有了一些了解。我知道 libcrypt.so.1 是运行 ls -l | grep "libcrypt.so.1" 后指向 libcrypt.so.1.1.0 的符号链接我得到以下信息:
lrwxrwxrwx 1 root root 39 Mar 10 12:24 libcrypt.so -> /lib/x86_64-linux-gnu/libcrypt.so.1.1.0
lrwxrwxrwx 1 root root 17 Mar 10 12:24 libcrypt.so.1 -> libcrypt.so.1.1.0
-rw-r--r-- 1 root root 202760 Mar 10 12:24 libcrypt.so.1.1.0
将目录更改为$HOME/.rbenv/versions/2.7.0/lib 后运行ls -l 我得到以下输出:
lrwxrwxrwx 1 sfernandez sfernandez 16 Jun 27 20:25 libruby.so -> libruby.so.2.7.0
lrwxrwxrwx 1 sfernandez sfernandez 16 Jun 27 20:25 libruby.so.2.7 -> libruby.so.2.7.0
现在,我认为问题在于 libruby.so.2.7 可以很好地引用 ruby 代码,但它还需要访问 libcrypt.so.1 引用的任何内容。有人有什么想法吗?
这个问题仍然相关,请帮助
【问题讨论】:
-
遇到同样的问题。这些相同的命令在终端中有效,但在 emacs 终端中无效。