Xcode10报错之libstdc++.6.0.9.tbd未找到(library not found for -lstdc++.6.0.9)
这是因为咱们工程引用了libstdc++.6.0.9.tbd这个文件,而Xcode10移除了这个文件.我们可以去Xcode9中移出该文件.路径为
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/
或者去以下的网址下载然后放入上面的路径中.重新运行一下就OK
libstdc++.6.0.9.tbd文件
Xcode 10 中关于 Error: Multiple commands produce
更新Xcode 10,自然开始第一时间运行老项目,踩坑填坑
这边记录下基本出现的问题
Error: Multiple commands produce
简单而言,Xcode10使用了一个的新创建系统,比之前的提供更好的可靠性与创建性能,而且可以获取项目配置问题(默认设置新创建系统)
在苹果文档中,提及Xcode10中的关于旧项目New Build System更改适配中提及到以下两点
New Build System会对构建中的元素循环进行严格的检查,避免不必要的重建,这个也是错误出现的原因。
错误发生的两种普遍形式:
1、info.plist
Multiple commands produce '/Users/tjsoft/Library/Developer/Xcode/DerivedData/TYKYTwoLearnOneDo-amcfzswumxdotlgjwdslugmywxch/Build/Products/Debug-iphoneos/TYKYTwoLearnOneDo.app/Info.plist':
1) Target 'TYKYTwoLearnOneDo' (project 'TYKYTwoLearnOneDo') has copy command from '/Users/tjsoft/TYKY /党建/黔纪/QianJiDangJian_iOS/TYKYTwoLearnOneDo/Info.plist' to '/Users/tjsoft/Library/Developer/Xcode/DerivedData/TYKYTwoLearnOneDo-amcfzswumxdotlgjwdslugmywxch/Build/Products/Debug-iphoneos/TYKYTwoLearnOneDo.app/Info.plist'
2) Target 'TYKYTwoLearnOneDo' (project 'TYKYTwoLearnOneDo') has process command with output '/Users/tjsoft/Library/Developer/Xcode/DerivedData/TYKYTwoLearnOneDo-amcfzswumxdotlgjwdslugmywxch/Build/Products/Debug-iphoneos/TYKYTwoLearnOneDo.app/Info.plist'
2、Copy Pods Resources
Multiple commands produce '/Users/tjsoft/Library/Developer/Xcode/DerivedData/TYKYTwoLearnOneDo-amcfzswumxdotlgjwdslugmywxch/Build/Products/Debug-iphoneos/TYKYTwoLearnOneDo.app':
1) Target 'TYKYTwoLearnOneDo' has create directory command with output '/Users/tjsoft/Library/Developer/Xcode/DerivedData/TYKYTwoLearnOneDo-amcfzswumxdotlgjwdslugmywxch/Build/Products/Debug-iphoneos/TYKYTwoLearnOneDo.app'
2) That command depends on command in Target 'TYKYTwoLearnOneDo': script phase “[CP] Copy Pods Resources”
解决方法可以有两种,一种是不使用New Build System,在File > Project/Workspace Settings中的Share Project/Workspace Settings 里build system 将New Build System(Default)切换成Legacy build system。
其次是根据出错信息,在新创建系统模式下,去除多余的引用重建。
Info.plist
在 target -> Build phase > Copy Bundle Resource 中找到info.plist,移除Copy Pods Resources
在 target -> Build phase > Copy Pods Resources -> Output Files,移除{UNLOCALIZED_RESOURCES_FOLDER_PATH}