我不得不重新安装我的 MacBook Pro。我已经安装了最新的 macOS 和 Xcode 版本,所以
macOS Monterey 12.0.1 (21A559) 和版本 13.1 (13A1030d)
我正在编写音频插件,以便测试我的插件。在我的情况下,我通常运行 DAW(数字音频工作站),我大部分时间都在使用 Ableton 或 Bitwig。
因此,如果我启动调试过程,我会收到以下错误:无法附加到 pid XXXXXX 附加失败(不允许附加到进程。在附加失败时查看调试服务器条目附近的控制台消息(Console.app) . 拒绝附加权限的子系统可能已经记录了一条关于它被拒绝原因的信息性消息。)
如果我留意到 console.app 以下几行:
[LaunchAttach] (3277) 即将到 task_for_pid(2930)
错误:[LaunchAttach] MachTask::TaskPortForProcessID task_for_pid(2930) 失败:::task_for_pid (target_tport = 0x0203, pid = 2930, &task) => err = 0x00000005 ((os/kern) 失败)
macOSTaskPolicy: (com.apple.debugserver) 可能无法获取 (BitwigStudio) 的任务控制端口 (pid: 2930): (BitwigStudio) 已加固, (BitwigStudio) 没有get-task-allow, (com.apple. debugserver) 是声明的调试器(com.apple.debugserver) 不是声明的只读调试器
1 +0.000000 秒 [0ccd/0103]: 错误: ::task_for_pid (target_tport = 0x0203, pid = 2930, &task) => err = 0x00000005 ((os/kern) 失败) err = ::task_for_pid (target_tport = 0x0203, pid = 2930, &task ) => err = 0x00000005 ((os/kern) 失败) (0x00000005)
我做了一些研究并发现了这一点: Stackoverflow 链接关于 What does get-task-allow do
get-task-allow,当登录到应用程序时,允许其他进程(如调试器)附加到您的应用程序。分发配置文件要求关闭此值,而开发配置文件要求打开此值(否则 Xcode 将永远无法启动并附加到您的应用程序)。
所以我无法用那个软件调试我的程序。那是对的吗?:(