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

升级Sonoma+更换外置硬盘后Xcode编译Pods写入权限错误

问题分析与解决建议

问题背景

刚从Monterey升级到Sonoma系统,同时将内置HDD格式化后更换为外置硬盘,编译闲置一年的项目时触发文件写入权限错误,错误来自[CP] Embed Pods Framework脚本,具体报错:

error: Sandbox: rsync.samba(17825) deny(1) file-write-create /Users/danieldonaldson/Library/Developer/Xcode/DerivedData/TestComposer-fkrrttghacwdgdgvsgqetjnfbbxl/Build/Products/Debug-iphoneos/TestComposer.app/Frameworks/SwiftSVG.framework/.Info.plist.uRrjb7 (in target 'TestComposer' from project 'TestComposer')

已尝试操作:

  • 删除Derived Data,无效果
  • 将SwiftSVG Pod从2.0升级到2.3.0,问题未解决

补充信息:提交Git未变更文件后,出现新的权限错误,日志如下:

mkdir -p /Users/danieldonaldson/Library/Developer/Xcode/DerivedData/TestComposer-fkrrttghacwdgdgvsgqetjnfbbxl/Build/Products/Debug-iphonesimulator/TestComposer.app/Frameworks
rsync --delete -av --filter P .*.?????? --links --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "/Users/danieldonaldson/Library/Developer/Xcode/DerivedData/TestComposer-fkrrttghacwdgdgvsgqetjnfbbxl/Build/Products/Debug-iphonesimulator/SwiftSVG/SwiftSVG.framework" "/Users/danieldonaldson/Library/Developer/Xcode/DerivedData/TestComposer-fkrrttghacwdgdgvsgqetjnfbbxl/Build/Products/Debug-iphonesimulator/TestComposer.app/Frameworks"
building file list ... done
SwiftSVG.framework/Info.plist
SwiftSVG.framework/SwiftSVG
SwiftSVG.framework/_CodeSignature/
rsync: recv_generator: mkdir "/Users/danieldonaldson/Library/Developer/Xcode/DerivedData/TestComposer-fkrrttghacwdgdgvsgqetjnfbbxl/Build/Products/Debug-iphonesimulator/TestComposer.app/Frameworks/SwiftSVG.framework/_CodeSignature" failed: Operation not permitted (1)
*** Skipping everything below this failed directory ***
rsync: mkstemp "/Users/danieldonaldson/Library/Developer/Xcode/DerivedData/TestComposer-fkrrttghacwdgdgvsgqetjnfbbxl/Build/Products/Debug-iphonesimulator/TestComposer.app/Frameworks/SwiftSVG.framework/.Info.plist.eKMDsg" failed: Operation not permitted (1)
rsync: mkstemp "/Users/danieldonaldson/Library/Developer/Xcode/DerivedData/TestComposer-fkrrttghacwdgdgvsgqetjnfbbxl/Build/Products/Debug-iphonesimulator/TestComposer.app/Frameworks/SwiftSVG.framework/.SwiftSVG.H5hgfW" failed: Operation not permitted (1)

sent 826770 bytes  received 70 bytes  1653680.00 bytes/sec
total size is 830166  speedup is 1.00
rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots/98ed8ad3-3356-11ee-9b53-aead88ae2785/Library/Caches/com.apple.xbs/Sources/rsync/rsync/main.c(996) [sender=2.6.9]

问题定位

  1. 核心原因:错误并非Pod源码问题,而是Sonoma系统沙箱限制+外置硬盘权限配置不当导致rsync进程无法写入文件。Sonoma的隐私沙箱机制比Monterey更严格,外置硬盘的权限设置或隐私保护规则阻止了Xcode的rsync进程访问Derived Data目录。
  2. 错误指向:[CP] Embed Pods Framework脚本负责将编译完成的Pod框架复制到App的Frameworks目录,rsync是该过程的执行工具,系统沙箱拒绝了它的写入权限。

解决步骤

  • 给Xcode添加全盘访问权限:
    1. 打开「系统设置」→「隐私与安全性」→「全盘访问」
    2. 点击加号,添加Applications目录下的Xcode到列表
    3. 重启Xcode后重新编译
  • 检查外置硬盘权限:
    1. 右键外置硬盘图标→「显示简介」
    2. 在「共享与权限」中,确保当前用户拥有「读与写」权限,勾选「应用到包含的项目」
  • 重置Xcode权限数据库:
    打开终端执行:
    tccutil reset All com.apple.dt.Xcode
    
    重启Mac后重新打开Xcode
  • 清理并重建Pod依赖:
    终端进入项目目录,依次执行:
    pod deintegrate
    pod clean
    pod install
    
    打开项目重新编译

内容的提问来源于stack exchange,提问作者Dan Donaldson

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 16:15:06