我启动 LibreOffice 基础,创建一个新的基础,使用所有默认设置(HSQLDB),只需单击下一步,确定,选择一个文件名,单击确定,它就崩溃了。
soffice.bin 因 SIGSEGV 崩溃
这是一台 32 位机器,它在 16.04 上崩溃(尝试了 OpenJDK 8.131 和 Oracle Java 8.144 并尝试将 LO 更新到最新版本),它在最新的 17.04(完全更新)上崩溃。
我在一台物理机和 VirtualBox 中的另一台机器上尝试过。
确实如此不是使用崩溃64 位安装。
有什么提示吗?
答案1
我终于找到了一些信息。问题始于 2017 年 6 月中旬。
- LibreOffice Base 无法在 32 位 Linux 机器上运行
- 这个问题应该会在新内核版本中得到修复(希望如此)
- 这是影响 LibreOffice Base 所需的 Java 的内核更改(安全修复)
- Ubuntu、LibreOffice 或 OpenJDK 都无法修复此内核问题(好吧,也许 OpenJDK 也可以修复它)
- 有一个解决方法(在 16.04 和 17.04 上测试):“添加内核参数
stack_guard_gap=1
”
编辑文件/etc/default/grub
并更改行开头GRUB_CMDLINE_LINUX_DEFAULT
以包含参数,例如编辑后它可能看起来像这样:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash stack_guard_gap=1"
然后运行sudo update-grub
并重新启动。
当新内核解决这个问题(测试)时,你应该删除这个参数,因为我猜没有 stack_guard 会不太安全...
参考:
- 这Ubuntu 错误报告
- 这LibreOffice 错误报告
- ALinux 内核邮件列表帖子作者:Ben Hutchings
- 有问题的代码
看起来我不能在这里发布超过 2 个链接。但完整的答案是这里是 ask.libreoffice.org。