升级MacOS High Sierra与Xcode后运行项目遇codesign错误求助
解决Xcode 9.3 + High Sierra下codesign签名libswiftARKit.dylib失败的问题
刚升级完系统和Xcode就碰到这个签名报错,太糟心了!我之前处理过类似的签名问题,给你几个实用的排查和解决步骤:
先检查签名证书是否正常
打开Xcode的Preferences > Accounts,选中你的开发者账号,点击Manage Certificates,看看iOS Development证书有没有过期、缺失或者状态异常。要是有问题,直接删掉现有证书,点击左下角的+号重新生成一份iOS Development证书,下载后再试试。清空Derived Data再重试
错误里的文件是在Derived Data目录下的,这个目录经常会因为版本升级产生缓存问题:- 打开Xcode,点击
File > Project/Workspace Settings - 点击Derived Data旁边的箭头,直接删除整个
ARPortalDemo-ablkjxbynnihakhdfdihocryaejd文件夹 - 重启Xcode,重新编译项目
- 打开Xcode,点击
核对项目的签名配置
选中项目的target,进入Build Settings搜索Code Signing:- 确保
Code Signing Identity在Debug和Release模式下都手动指定了你的开发者证书(别选Automatic,自动选择有时候会抽风) - 检查
Provisioning Profile是否匹配当前项目的bundle ID,有没有过期失效
- 确保
修复libswiftARKit.dylib的权限
系统升级后Derived Data里的文件权限可能会出问题,手动调整一下:
打开终端,执行这条命令(把路径换成你错误里的实际路径):chmod 755 /Users/hamza/Library/Developer/Xcode/DerivedData/ARPortalDemo-ablkjxbynnihakhdfdihocryaejd/Build/Products/Debug-iphoneos/ARPortalDemo.app/Frameworks/libswiftARKit.dylib执行完再重新编译试试
重置Xcode的签名缓存
如果上面的方法都没效果,试试彻底重置Xcode的缓存:- 先关闭Xcode
- 在终端执行:
rm -rf ~/Library/Caches/com.apple.dt.Xcode rm -rf ~/Library/Developer/Xcode/DerivedData - 重启Xcode,重新配置好签名信息后再编译项目
内容的提问来源于stack exchange,提问作者raheem
相关产品推荐
相关产品推荐

