You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS Sequoia 15.4.1下编译的C++二进制文件运行时立即被终止(zsh: killed)

macOS Sequoia 15.4.1下编译的C++二进制文件运行时立即被终止(zsh: killed)

我最近刚帮朋友排查过几乎一模一样的问题,结合社区里大家踩过的坑,给你几个可以逐个尝试的排查方向:

  • 检查Xcode Command Line Tools版本是否匹配系统
    系统大版本升级后,Command Line Tools很容易出现版本不兼容的情况,这会导致编译出的二进制和新系统的运行环境不匹配。你可以先执行xcode-select --install重新安装适配Sequoia的最新版本,安装完成后重启终端,再重新编译运行你的程序试试。

  • 验证代码签名与Gatekeeper的影响
    虽然你一开始排除了签名问题,但Sequoia 15.4.1对Gatekeeper的规则做了小调整,临时签名可能就能解决问题:
    执行codesign -s - ./a.out给生成的二进制添加一个临时的自签名,之后再运行./a.out看是否正常。
    另外也可以临时关闭Gatekeeper做测试(记得测试完一定要恢复):

    sudo spctl --master-disable
    ./a.out
    sudo spctl --master-enable
    
  • 尝试换用clang++编译
    macOS原生的clang对系统的适配性通常比第三方g更好,你可以试试用clang++ test.cpp && ./a.out编译运行,如果这样能正常输出"test!",那大概率是你当前使用的g++版本和Sequoia不兼容,需要通过Homebrew安装最新版的gcc来替换旧版本。

  • 查看系统日志定位具体原因
    如果上面的方法都没解决,建议去系统日志里找终止程序的具体原因,执行以下命令搜索和你的二进制相关的日志:

    log show --predicate 'processImagePath contains "a.out"' --info --debug
    

    日志里会明确说明系统kill程序的触发原因,比如架构不兼容、权限问题、签名验证失败等,能帮你精准定位问题。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 11:29:29