适用于Mac App的stdout在哪里?

Bri*_*tow 9 macos console stdout

过去,stdout进入Console.app显示的控制台日志.我一直在使用firefox插件遇到一些问题(请参阅其他问题,抱歉垃圾邮件......)我试图使用printfs至少看看我是否正在启动我的插件.

我刚才注意到我的控制台日志自1月6日以来一直没有更新.(是的,我过去一个月一直在使用该机器.)现在,我不是唯一使用控制台日志的程序,所以所有那些消息必须要去其他地方.

有谁知道在哪里?

问题是syslogd被破坏了.现在已经修好了.

Bri*_*tow 5

解决方案:问题不在于标准输出不会进入控制台。问题是控制台没有被写入,因为 syslogd 被窃听了。Syslogd 出于某种原因被沙箱化,因此自 1 月 6 日以来没有任何内容写入控制台。

解决方案是重新注释掉 LaunchDaemons/com.apple.syslogd.plist 的“如果您想沙箱 syslogd 时取消注释”部分。

解决方案来自 superuser.com .... 谢谢!


Ken*_*agh 3

printf 应该转到 Console.app。听起来你的坏了。

调试插件的一个好方法是将 FireFox 设置为 XCode 项目的自定义可执行文件,并在调试器中运行。然后 XCode 控制台将捕获输出。在这种情况下,您也只需使用断点来查看插件是否正在加载,而不是 printf。