我在使用Xcode 8.1和Swift 3进行编译时出现此错误:
Swift stdlib工具错误
编译日志的结尾如下:
/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftCore.dylib: replacing existing signature
/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftCore.dylib: CSSMERR_CSP_INVALID_CONTEXT_HANDLE
In architecture: x86_64
Probing signature of /Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftXPC.dylib
/usr/bin/codesign '-r-' '--display' '/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftXPC.dylib'
error: Task failed with exit 1 signal 0 {
/usr/bin/codesign '--force' '--sign' '-' '--verbose' '/Users/..../Library/Developer/Xcode/DerivedData/.../Build/Products/Debug/.../Contents/Frameworks/libswiftCore.dylib'
}
非常奇怪的是,如果我将带有项目的文件夹复制到我的桌面,它会编译而不会出现错误。如果我将其复制到别处,则会出错。来回移动几次以验证,最后在第三次移动后,它也在桌面上出错。
有什么想法吗?
非常感谢提前。
答案 0 :(得分:17)
我今天早些时候遇到了同样的问题。
我是Xcode和swift的新手,刚刚开始尝试。在其中一个教程中,它建议编译模拟器,然后尝试为您的设备进行编译。
当我为我的设备编译时,它询问了我的钥匙串密码,我第一次尝试将密码弄错了,假设没有必要点击拒绝访问钥匙串按钮。
我在同一主题上读了几个堆栈溢出查询,发现一个建议重新启动Mac。
这对我有用。
答案 1 :(得分:5)
如果清除DerivedData
不适合您,请尝试重新下载所有配置文件,然后确保您的认证中包含 iOS开发。
您可以通过以下方式确认:打开Xcode→Xcode→首选项→帐户。单击列表中的appleId,单击下载所有配置文件,然后等待它下载所有配置文件。然后单击管理认证→单击 + 签名→ iOS开发。
答案 2 :(得分:5)
简单的重启为我解决了这个问题。
答案 3 :(得分:2)
在我的特定情况下,既不删除DerivedData
目录也不重启我的计算机。
在我通过Xcode提示输入系统/ root密码以允许访问Keychain中的密钥时,我在创建Apple ID(免费)配置文件时遇到Swift stdlib tool Error
时遇到问题我发现了我的密码,但我点击了 允许 按钮。
这导致Xcode再次提示我输入密码,无论我输入多少次都不接受它。然后,我错误地按下Esc
键,假设Xcode第一次接受了我的密码,但只是只是故障。
然而,我错了,从那时起它从来没有提示我输入我的钥匙串密码,但是,每次我尝试构建并运行它时,都会抱怨Swift stdlib tool Error
错误我试图在我的iOS设备上运行我的应用程序。
为了解决这个问题,我做了以下几点:
此解决方案的一个主要警告:
删除您的登录密钥链将导致您的计算机将您从许多以前保存过密码的应用程序中注销。例如,我使用Spark邮件应用程序客户端,它导致我重新输入我的个人电子邮件(Gmail)帐户密码,它也让我退出了Evernote应用程序。 所以,请注意! 然而,在我的事业中,这并不是什么大不了的事,因为我可以再次登录。它在最糟糕的时候很烦人。
答案 4 :(得分:2)
与racl101(https://stackoverflow.com/a/49266114/3612595)一样,删除DerivedData目录或重新启动计算机都不能解决问题。
为避免删除登录钥匙串,以下内容为我解决了该问题:
如果您希望将登录钥匙串密码更改回原始值,请重复此过程。
答案 5 :(得分:1)
我的成功3步:
1)重启设备
2)重启Mac
3)删除文件夹/ Users / YOR-NAME / Library / Developer / Xcode / DerivedData /(在错误报告中列出)
答案 6 :(得分:1)
今天早些时候我遇到了同样的问题。
我是Xcode和Swift的新手,刚刚开始尝试。在第一批教程之一中,它建议编译一个模拟器,然后尝试为您的设备编译。
当我为设备编译时,它要求输入钥匙串密码,这是我第一次尝试输入错误密码时,假设我没有必要单击拒绝访问钥匙串按钮的情况。