Xcode10趟坑之路

摘要:
更新找到了运行Xcode10模拟器和真实机器1++_ Sim的方法。zip解压缩并将其放在/Applications/Xcode目录中。app/内容/开发人员/平台/iPhone模拟器。平台/开发人员/SDKs/iPhone模拟器。sdk/usr/lib/libstdc++。dylib_ Sim。zip解压缩并将其放在/Applications/Xcode目录中。app/内容/开发人员/平台/iPhoneOS。platform/Developer/Library/CoreSimulator/Profiles/Runtimes/iOS-Simruntime/Contents/Resources/RuntimeRoot/usr/lib/首先在这里写一份坑之旅的摘要。在此期间,我还遇到了一个问题,即我以前的同事编写的代码过于臃肿,无法通过Xcode10识别。这些都是小问题,因此我不再重复。报告的错误如下。如果你有类似的经验,你可以稍微修改一下。

https://www.jianshu.com/p/12558d39ba08

先默念别有太多坑啊

跑起来吧

结果没有跑起来

1.第一个坑

Showing Recent Messages

:-1: Multiple commands produce '/Users/wanglei/Library/Developer/Xcode/DerivedData/JMTAPP-grwqpsineudpywaswwtdjudjpkwm/Build/Products/Debug-iphonesimulator/JMTAPP.app':

1) Target 'JMTAPP' has create directory command with output '/Users/wanglei/Library/Developer/Xcode/DerivedData/JMTAPP-grwqpsineudpywaswwtdjudjpkwm/Build/Products/Debug-iphonesimulator/JMTAPP.app'

2) That command depends on command in Target 'JMTAPP': script phase “[CP] Copy Pods Resources”

Xcode10趟坑之路第1张

1

英语不好,隐约中感觉是跟Pod有关系,但是抓住了output 和[CP] Copy Pods Resources关键字,摸索一番之后,得到了解决办法

TARGETS --> Build Phases --> [CP] Copy Pods Resources --> Output Files 删除 ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}

Xcode10趟坑之路第2张

2

结果如下:

Xcode10趟坑之路第3张

3

好的接着跑

2.第二个坑

Showing Recent Messages

:-1: Multiple commands produce '/Users/wanglei/Library/Developer/Xcode/DerivedData/JMTAPP-grwqpsineudpywaswwtdjudjpkwm/Build/Products/Debug-iphonesimulator/JMTAPP.app/Info.plist':

1) Target 'JMTAPP' (project 'JMTAPP') has copy command from '/Users/wanglei/Desktop/iosv2.1 2/JMTAPP/Info.plist' to '/Users/wanglei/Library/Developer/Xcode/DerivedData/JMTAPP-grwqpsineudpywaswwtdjudjpkwm/Build/Products/Debug-iphonesimulator/JMTAPP.app/Info.plist'

2) Target 'JMTAPP' (project 'JMTAPP') has process command with output '/Users/wanglei/Library/Developer/Xcode/DerivedData/JMTAPP-grwqpsineudpywaswwtdjudjpkwm/Build/Products/Debug-iphonesimulator/JMTAPP.app/Info.plist'

字面意思,说是info.plist 文件重复了

两种解决方案:

1 设置workspace

xcode -> file -> WorkSpace Settings ->BuildSystem -> 选择 Legacy Build System

Xcode10趟坑之路第4张

4

2 删除info.plist 文件

TARGETS --> Build Phases --> Copy Bundle Resources --> 删除info.plist

3.第三个坑

犹豫项目比较老,很多第三方库不能用了

Pods/ObjectMapper/Sources/EnumOperators.swift:35:13: Invalid redeclaration of '<-'

Xcode10趟坑之路第5张

5

红的报的我想哭

尝试更新第三方库试试

pod update ObjectMapper --verbose --no-repo-update

pod update HandyJSON --verbose --no-repo-update

4.第四个坑

ld: library not found for -lstdc++.6.0.9

linker command failed with exit code 1 (use -v to see invocation)

项目里用了阿里百川的反馈,用了这个依赖库,

字面意思,缺失c++依赖库,苹果在XCode10和iOS12中移除了libstdc++这个库,由libc++这个库取而代之,

苹果的官方解释是libstdc++已经标记为废弃有5年了,建议大家使用经过了llvm优化过并且全面支持C++11的libc++库。

这个好解决,缺失库,我就从xcode9里面把这些库复制过来。

Xcode -> 显示包内容->Contents->Developer->Platforms->iPhoneOS.platform(模拟器是iPhoneSimulator.platform)->Developer->SDKS->iPhoneOS.sdk->usr->lib

然后真机运行,成功

5.第五个坑

继续上面的第四个坑啊,真机运行是OK的,但是模拟器运行,编译通过后却崩溃了。

Xcode10趟坑之路第6张

6

看得出错提示说是.dylib与这个模拟器不符合。

这个问题,要么在Xcode10里面安装iOS11的模拟器运行环境,要么就是跟厂家联系,进行升级。

更新

找到了Xcode10模拟器和真机运行的办法了

1.将libstdc++_sim.zip解压,放到目录

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib/

将 libstdc++.dylib_sim.zip 解压,放到目录

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/usr/lib/

总结

趟坑之路先写到这里,期间也遇到了以前同事写的代码过于臃肿,Xcode10识别不出来的问题,这都是小问题,就不赘述了,报的错误如下,有这个相似经历的,稍微修改一下就可以了。

The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions

欢迎各位大佬,批评指正和建议。

作者:王垒iOS

链接:https://www.jianshu.com/p/12558d39ba08

来源:简书

简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

免责声明:文章转载自《Xcode10趟坑之路》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ubuntu之安装(Gnome和KDE)Thinkphp6笔记十:多语言配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

新能力丨云开发Cloudbase推出登录组件

开发「用户登录模块」是 Web 应用开发者最关心的事项之一,继云开发 CloudBase 原生支持短信验证码登录后,目前云开发已支持短信验证码、邮箱等多种登录鉴权方式,供不同的用户场景使用。 为了进一步优化开发者的使用体验,云开发 CloudBase 全新推出了自带云开发登录能力的 UI 组件——@cloudbase/ui-react,封装了邮箱登录、短信...

投票网站如何防止机器刷票

本文为姜友瑶原创作品 非商业转载请注明作译者、出处,并保留本文的原始链接。否则追究法律责任!商业转载请联系作者! 更多作品请访问我的个人网站 www.jyymatrix.cc 其实我自己没有用过刷票软件,但是我和刷票软件之间却有过战斗! 之前帮学校做的投票网站再次上线后发现还是遇到了投票软件的攻击。后面我也好奇于是去网上找了一些关于刷票软件的资料。 看看...

Jenkins+Jdk+Git+Maven持续集成部署Weblogic实例项目

通过Jenkins部署Weblogic项目前,服务器需要提前安装好Weblogic服务,Weblogic服务搭建请百度或者在博客园搜索我的帖子“Weblogic服务搭建” 登录Jenkins http://IP或域名:8080 先构建一个“Build项目” 左侧导航栏,选择“新建任务”,然后输入一个任务名称,自定义,选择第二项“构建一个maven项目”,点...

对几款网络抓包工具的评测

对几款网络抓包工具的评测 by 拉登哥哥最近在写个CMD远控 写着写着 想在服务端上做点手脚都知道杀软误报 特别是黑软大部分都报毒 但实际上是正常的对此可能部分人并不装杀软 基本上靠自己分析软件是否安全1 低级点的 用相关工具 检测不能真的完全保证程序无毒 也没啥技术含量原因是 可能你正在检测时 后门没激活(比如 我设置晚上12点才向外连接等)你在白天或其...

Android Studio Gradle:Resolvedependencies':app:_debugCompile' 问题解决纪录

问题描述: 第一次使用AndroidStudio打开已经存在的AndroidStudio项目,卡在Gradle:Resolvedependencies':app_debugCompile'步骤,即使进入了AndroidStudio界面也无法正常下载Gradle依赖,无法编译运行。 1.首先确认gradle依赖都声明在app下的build.gradle中,而...

OpenNESS,开源的边缘网络服务平台

目录 文章目录 目录 参考文章 OpenNESS 的电梯间演讲 OpenNESS 与 ETSI MEC Edge Controller Software 的功能清单 Edge Platform Software 的功能清单 OpenNESS 的部署方案 On-Premise Edge Deployment Network Edge Deploym...