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

Mac系统下Cargo构建报错ld framework not found Security如何解决

macOS下Rust chrono依赖Security框架链接失败解决方案

你遇到的报错是chrono 0.4.19版本默认启用了macOS平台的Security框架绑定,本地Xcode命令行工具路径配置异常导致链接时找不到对应系统框架,可按以下顺序排查修复:

  • 首先修复Xcode命令行工具配置
    先执行xcode-select --install安装基础命令行工具,如果提示已安装,执行sudo xcode-select --reset重置工具路径,大部分用户是升级macOS后SDK路径漂移导致的框架查找失败,重置后即可正常编译。
  • 如果不需要chrono的加密相关特性,直接修改Cargo.toml依赖配置关闭默认特性即可:
    chrono = { version = "0.4.19", default-features = false, features = ["clock"] }
    
    可以根据自己的需求添加需要的特性,只要不启用security-framework相关特性就不需要链接系统Security框架。
  • 如果必须使用chrono的全部默认特性,可以手动给Rust编译器添加链接参数,在项目根目录创建.cargo/config.toml文件,添加以下配置:
    # 适配Intel架构Mac
    [target.x86_64-apple-darwin]
    rustflags = [
      "-C", "link-arg=-F/System/Library/Frameworks",
      "-C", "link-arg=-framework",
      "-C", "link-arg=Security"
    ]
    
    # 适配Apple Silicon架构Mac
    [target.aarch64-apple-darwin]
    rustflags = [
      "-C", "link-arg=-F/System/Library/Frameworks",
      "-C", "link-arg=-framework",
      "-C", "link-arg=Security"
    ]
    
    该配置会强制链接器到系统默认框架目录查找Security框架,不需要修改系统全局配置即可生效。

Docker环境是Linux系统,chrono在Linux下不会调用Security框架,所以不会触发该问题。

内容的提问来源于stack exchange,提问作者log N

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 16:09:04