我已将Fedora从28升级到最新的29,而Slack不再起作用。它返回一个Segmentation fault (core dumped)
。
编辑:此问题已在Slack 3.3.4上修复。
我已将Fedora从28升级到最新的29,而Slack不再起作用。它返回一个Segmentation fault (core dumped)
。
编辑:此问题已在Slack 3.3.4上修复。
sudo snap install slack --classic
Answers:
随着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
在您的OS上轻松找到其他版本:
sudo updatedb && locate libnode
我使用了原子一号,因为我确定编辑器的最新工作更新。
sudo ln -fs /usr/share/code/libnode.so /usr/lib/slack/libnode.so
/usr/lib/slack/slack: symbol lookup error: /usr/lib/slack/slack: undefined symbol: udata_setCommonData_59
这样做后得到了……我还缺少其他东西吗?
正如@Flat所指出的那样,包含的libnode.so不适用于fedora 29。
从http://atom.io下载最新的atom.rpm (我以前从未听说过...)
安装它,移开坏的库,并将新的库符号链接到位:
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或官方来源。但是我看的很快,没有看到一个,并且它没有安装在系统的其他任何地方。
此问题最早在Arch linux上更新到glibc 2.28时报告。Fedora 29和Ubuntu 18.10的用户都已经在许多Electron应用程序中遇到了此错误。Slack的Snap软件包在这些发行版的这些版本上都可以正常工作。可以将其glibc版本降级为2.27的用户不会出现段错误。
11月7日,Electron问题上增加了一条新评论-仅供参考,以退出libnode。而且,如果这样做,您可能想在Slack发布修复程序时将其切换回去。
对于从其他地方替换libnode.so(并使应用程序再次运行)但仍然偶尔崩溃的Slack用户,请暂时禁用您的通知声音。看来,如果Slack尝试播放新消息的通知声音,它只会重新启动,而不是四处播放片段。
Thx @Flat为最初的问题和答案;),我真的需要在应用程序上放宽而不是基于网络的版本
在安装不需要的东西之前,请检查目录中是否还没有其他软件提供的lib。
例如,我也在vscode上找到了一个可用的libnode.so版本
sudo updatedb && locate libnode