xcode 10 升级 cordova 项目爬坑

 

1 .Multiple commands produce 错误

 

用Xcode10跑之前的项目,也就报了一种类型的错误:Multiple commands produce。这个的原因是项目中使用第三方库,里面有README.md,README.txt,LICENSE,Info.plist之类的,而且是不止一个库中有,重复的这些文件,导致的报错。

  类似于::-1: Multiple commands produce '/Users/gavin/Library/Developer/Xcode/DerivedData/talk-glxnnbklscdqzwgtdtyodcfzxvwb/Build/Products/Debug-iphoneos/talk.app/Info.plist':
1) Target 'talk' has copy command from '/Users/gavin/Desktop/ios2.0xcode10/talk/talk/Supporting Files/Info.plist' to '/Users/gavin/Library/Developer/Xcode/DerivedData/talk-glxnnbklscdqzwgtdtyodcfzxvwb/Build/Products/Debug-iphoneos/talk.app/Info.plist'
2) Target 'talk' has process command with input '/Users/gavin/Desktop/ios2.0xcode10/talk/talk/Supporting Files/Info.plist'

解决办法1:

 

 

 

2.如果是还要留用以前的编码方式的话可以通过:

2.libstdc++6.0.9 因为被xcode 10 弃用引起的问题

C++库libstdc++在Xcode8的时候已经弃用,在Xcode10以及之后将不再支持(iOS target)。C++工程必须迁移到libc++。除了修改c++标准库的build setting,开发者还应该查看一下硬编码的linker flags和target的依赖,删除libstdc++(包括-lstdc++、-lstdc++6.0.9、libstdc++6.0.9.tbd和libstdc++6.0.9.dylib)的引用。项目中依赖的针对libstdc++构建的静态归档文件也需要针对libc++重新构建。(也就是说我们需要检查一下Target的Build Phases,里面的Link Binary With Libraries如果包含上述提到的库,需要删除,并且移除DrivedData)。

解决办法

1.如果可以的话项目中依赖的针对libstdc++构建的静态归档文件也需要针对libc++重新构建。

2.如果项目比较老,并且很多依赖这些库的话可以通过拷贝xcode 9 里面的依赖放到xcode 10 里面

Xcode10中(libstdc++、libstdc++.6、libstdc++6.0.9) 废弃掉了,临时的解决方法是从Xcode9中copy一份过来,文件路径

libstdc++6.0.9   libstdc++、libstdc++.6 (解决办法)

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib 真机

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib 模拟器
libstdc++6.0.9 链接https://pan.baidu.com/s/1DmxxnpT-jrw3YCmG8mV9iw

    然后还要选择编译为以前的编译方式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值