Mac OSX Yosemite 所有 X11 应用程序都不可用
All X11 applications got unavailable in Mac OSX Yosemite
概览
所有 X11 应用程序都在我没有意识到的情况下变得不可用。由于没有 Time Machine 备份,无论如何我都需要解决这个问题。
环境
- 比系统默认值更新的 X11 安装在
/opt
。
- 因为某些应用程序需要来自
/usr
的符号链接,所以我做到了。 (例如 Wireshark)
- 因为stable 2.7.7 has forwarding bugs,目前我使用的是不稳定的2.7.8.
试用
我尝试使用 dtruss
转储系统调用。下面的例子用sudo dtruss xclock
表示。其他 X11 应用程序的行为也是如此。 recvfrom
.
后所有 X11 应用程序挂起
我也试过了...
rm ~/.Xauthority
- 重新安装相同版本的X11
但那些都与它无关。
抱歉交叉张贴日语here;仍然没有答案...
谢谢你。
OS X 安装程序删除了 /usr 的符号链接。最简单的解决方案是重新安装 XQuartz。这应该为使用旧系统位置的 Wireshark 之类的东西设置备份。
你也可以运行sudo /usr/libexec/x11-select /opt/X11
我记得大约 5 年前我们在 libX11 和 libxcb 中绊倒了 poll(2) 行为中的一个问题,这让我想起了。这个的残余在 libxcb 的 configure.ac 中,我们使用 select(2) 而不是旧版本的 OS X 的 poll(2)。问题是他们不支持调用poll(2) 在字符设备上,我们会得到一个 EAGAIN。
在您的情况下,情况似乎并非如此,但是 某事 在 recvfrom 中获得了 EAGAIN 并且可能忽略它而不是再次尝试。如果你能弄清楚 recvfrom 的调用点是什么(也许在 libxcb 中?),那将是一个很好的下一步。
为了让我获得更多数据,能否请您在 http://bugreport.apple.com 提交一个雷达并包含一个针对 xclock 的系统诊断?
通过设置解决 DISPLAY=:0.0
概览
所有 X11 应用程序都在我没有意识到的情况下变得不可用。由于没有 Time Machine 备份,无论如何我都需要解决这个问题。
环境
- 比系统默认值更新的 X11 安装在
/opt
。 - 因为某些应用程序需要来自
/usr
的符号链接,所以我做到了。 (例如 Wireshark) - 因为stable 2.7.7 has forwarding bugs,目前我使用的是不稳定的2.7.8.
试用
我尝试使用 dtruss
转储系统调用。下面的例子用sudo dtruss xclock
表示。其他 X11 应用程序的行为也是如此。 recvfrom
.
我也试过了...
rm ~/.Xauthority
- 重新安装相同版本的X11
但那些都与它无关。
抱歉交叉张贴日语here;仍然没有答案...
谢谢你。
OS X 安装程序删除了 /usr 的符号链接。最简单的解决方案是重新安装 XQuartz。这应该为使用旧系统位置的 Wireshark 之类的东西设置备份。
你也可以运行sudo /usr/libexec/x11-select /opt/X11
我记得大约 5 年前我们在 libX11 和 libxcb 中绊倒了 poll(2) 行为中的一个问题,这让我想起了。这个的残余在 libxcb 的 configure.ac 中,我们使用 select(2) 而不是旧版本的 OS X 的 poll(2)。问题是他们不支持调用poll(2) 在字符设备上,我们会得到一个 EAGAIN。
在您的情况下,情况似乎并非如此,但是 某事 在 recvfrom 中获得了 EAGAIN 并且可能忽略它而不是再次尝试。如果你能弄清楚 recvfrom 的调用点是什么(也许在 libxcb 中?),那将是一个很好的下一步。
为了让我获得更多数据,能否请您在 http://bugreport.apple.com 提交一个雷达并包含一个针对 xclock 的系统诊断?
通过设置解决 DISPLAY=:0.0