【问题标题】:"Emacs -Q" slow startup, sometimes“Emacs -Q”有时启动缓慢
【发布时间】:2014-09-05 09:44:57
【问题描述】:

我已经从源代码编译了 Emacs pretest 24.3.93.1,它大部分时间运行良好。但是,如果我在一段时间后关闭 Emacs,然后尝试再次启动它,它只会显示一个无响应的空白白色窗口,我必须等待超过 15 分钟才能使其响应。在等待时,我确信我的初始化文件没有被运行。我还尝试运行'emacs -Q',结果相似。

此外,我尝试了“emacs -Q -nw”,但我得到了一个空白的无响应终端。同样,我不得不等待相当长的时间让 emacs 再次响应。 知道如何解决这个问题吗?

编辑:为了编译,我刚刚下载了源代码并运行了没有参数的“配置”和“制作”。我使用的是 Ubuntu 14.04。

【问题讨论】:

  • 为什么在这里报告错误而不是通过M-x report-emacs-bug

标签: emacs


【解决方案1】:

运行strace emacs -Q,看看它挂起时在做什么。

看起来像这样的典型问题是 Emacs 正在尝试解析本地主机名,并且由于某些配置错误,此对名称服务器的请求超时。如果这听起来合理,您可以检查是否可以在 /etc/hosts 中找到 hostname -f

【讨论】:

  • 这似乎正是我想要的。在 emacs 停止响应时 strace 的输出在这里:link。在它停止响应一分钟后,我不得不终止该进程。这真的很奇怪,因为它甚至看起来都不像一个完成的声明。
  • 是的,系统调用永远不会返回。 /opt/share/info 是否会出现在网络挂载点上?
  • 好收获。我早该想到的。我卸载了 /opt/share,现在 emacs 运行良好。不确定 emacs 在我的 /opt/share/ 中做了什么,但我很高兴我现在明白了这个问题。谢谢您的帮助。你觉得这样的事情值得报道吗?
  • 那里的系统调用序列看起来像是在寻找信息手册。默认情况下,Emacs 在/opt/ 中查找信息手册(参见info.elInfo-default-directory-list 的定义)。我不确定它是否被认为是一个你无法避免在那里初始化的错误。至少在设置INFOPATH 时,我认为它不应该尝试遍历所有这些目录。可能值得尝试报告它,但我不希望它得到改变。 :-)
【解决方案2】:

您可以尝试使用 ppa 进行每日 emacs 构建:

sudo apt-get purge emacs emacs-snapshot-common emacs-snapshot-bin-common emacs-snapshot emacs-snapshot-el emacs-snapshot-gtk emacs23 emacs23-bin-common emacs23-common emacs23-el emacs23-nox emacs23-lucid auctex apel emacs24 emacs24-bin-common emacs24-common emacs24-common-non-dfsg emacs24-el
sudo add-apt-repository ppa:cassou/emacs
sudo apt-get update
sudo apt-get install emacs-snapshot-el emacs-snapshot-gtk emacs-snapshot

【讨论】:

  • 谢谢。我对解决问题更感兴趣。如果这是 emacs/Ubuntu 中的错误或只是我的编译设置,我想知道原因是什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-01
  • 2011-03-28
  • 2016-05-12
  • 2017-01-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多