我将Fedora从28升级到了最新的29,而Slack不再起作用。它返回一个Segmentation fault (core dumped)
。
编辑:此问题已在Slack 3.3.4中修复
答案 0 :(得分:77)
通过valgrind
我获得了以下输出:
Process terminating with default action of signal 11 (SIGSEGV): dumping core
Bad permissions for mapped region at address 0xDBF060
at 0xDBF060: ??? (in /usr/lib/slack/slack)
by 0x7112071: node::http2::Http2Session::Callbacks::Callbacks(bool) (in /usr/lib/slack/libnode.so)
by 0x7112134: ??? (in /usr/lib/slack/libnode.so)
by 0x5853CE9: call_init.part.0 (in /usr/lib64/ld-2.28.so)
by 0x5853DE9: _dl_init (in /usr/lib64/ld-2.28.so)
by 0x5845149: ??? (in /usr/lib64/ld-2.28.so)
问题似乎出在libnode.so
的“过时”版本中。我刚刚从最新的libnode.so
安装中复制了atom.rpm
的另一个版本:
sudo mv /usr/lib/slack/libnode.so /usr/lib/slack/libnode.so.old
sudo ln -s /usr/share/atom/libnode.so /usr/lib/slack/libnode.so
修改
就像用户Pierre Bellan所说的那样,您可以通过以下操作在您的操作系统上轻松找到libnode.so
的其他版本:
sudo updatedb && locate libnode
我使用原子一是因为我确信编辑器的最新工作更新。
答案 1 :(得分:28)
正如@Flat指出的那样,包含的libnode.so在fedora 29中不起作用。
从http://atom.io下载最新的atom.rpm(我以前从未听说过...)
安装它,将坏的lib移开,并将新的lib符号链接到位:
sudo dnf install ~/Downloads/atom.x86_64.rpm
sudo mv /usr/lib/slack/libnode.so /usr/lib/slack/libnode.so.bad
sudo ln -s /usr/share/atom/libnode.so /usr/lib/slack/libnode.so
可能有更好的libnode.so或官方来源;但是我看的很快,没有看到一个,而且它也没有安装在系统的其他任何地方。
答案 2 :(得分:14)
对于最初的问题和答案,请@@ Flat;),我真的需要在应用程序上放松,而不是基于Web的版本
在安装不需要的东西之前,请检查目录中是否还没有其他软件提供的库。
例如,我在vscode上也找到了一个可用的libnode.so版本
sudo updatedb && locate libnode
答案 3 :(得分:13)
此问题最早在Arch linux上更新为glibc 2.28时报告。 Fedora 29和Ubuntu 18.10的用户都已经在许多Electron应用程序中遇到了此错误。 Slack的Snap软件包在这些发行版的版本上都可以正常工作。可以将其glibc版本降级为2.27的用户不会出现段错误。
Issue reported on Electron apps
11月7日,Electron问题上增加了新的评论-仅供参考,以关闭libnode。而且,如果这样做,您可能想在Slack发布修复程序时将其切换回去。
对于从其他地方替换libnode.so(并使应用再次运行)但仍然偶尔崩溃的Slack用户,请暂时禁用您的通知声音。 看来,如果Slack尝试播放新消息的通知声音,它只会重新启动,而不是四处播放剪辑。