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”

1

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

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

2

结果如下:

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

4

2 删除info.plist 文件

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

3.第三个坑

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

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

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的,但是模拟器运行,编译通过后却崩溃了。

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趟坑之路的更多相关文章

  1. 多线程爬坑之路-Thread和Runable源码解析之基本方法的运用实例

    前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面 ...

  2. Vue 爬坑之路(六)—— 使用 Vuex + axios 发送请求

    Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource 目前主流的 Vue 项目,都选择 axios ...

  3. Vue 爬坑之路(九)—— 用正确的姿势封装组件

    迄今为止做的最大的 Vue 项目终于提交测试,天天加班的日子终于告一段落... 在开发过程中,结合 Vue 组件化的特性,开发通用组件是很基础且重要的工作 通用组件必须具备高性能.低耦合的特性 为了满 ...

  4. Vue 爬坑之路(一)—— 使用 vue-cli 搭建项目

    vue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目,GitHub地址是:https://github.com/vuejs/vue-cli vue ...

  5. html2canvas的踩坑之路

    html2canvas的踩坑之路 前言 早有耳闻这个html2canvas比较坑,但无奈于产品需求的压迫,必须实现html转图片的功能,自此走上了填坑之路,好在最后的效果还算令人满意,这才没有误了产品 ...

  6. Vue 爬坑之路(十二)—— vue-cli 3.x 搭建项目

    Vue Cli 3 官方文档:https://cli.vuejs.org/zh/guide/ 一.安装 @vue/cli 更新到 3.x 之后,vue-cli 的包名从 vue-cli 改成了 @vu ...

  7. Android Studio 3.0正式版填坑之路

    原文:https://www.jianshu.com/p/9b25087a5d7d   Android Studio 3.0启动图 序言 总看别人的文章,今天尝试着自己来写一篇.在逛论坛时候,无意间发 ...

  8. MySQL Connector/NET 使用小结(踩坑之路)

    背景描述 根据项目的需要,需连接MySQL获取数据. 首先,先了解一下项目的情况: 之前的代码是C#编写的的, 运行时:.NETFramework3.5. 由于项目已经部署上线,因此不能升级运行时,这 ...

  9. Tinker爬坑之路

    目的 热修复去年年底出的时候,变成了今年最火的技术之一.依旧记得去年面试的时候统一的MVP,然而今年却变成了RN,热修复.这不得不导致我们需要随时掌握最新的技术.不然可能随时会被淘汰.记得刚进公司,技 ...

随机推荐

  1. 设备树DTS 学习:3-常用的DTS 函数

    Linux内核中目前DTS相关的函数都是以of_前缀开头的,它们的实现位于内核源码的drivers/of下面 void __iomem*of_iomap(struct device_node *nod ...

  2. L2-002. 链表去重(模拟)

    题意: 给定一个带整数键值的单链表L,本题要求你编写程序,删除那些键值的绝对值有重复的结点.即对任意键值K,只有键值或其绝对值等于K的第一个结点可以被保留.同时,所有被删除的结点必须被保存在另外一个链 ...

  3. HihoCoder第四周:Trie图

    第四周的题目是前两周的综合,综合在一个是KMP算法的思想,一个是树的这么一个数据结构. 题目 : Trie图 输入 每个输入文件有且仅有一组测试数据. 每个测试数据的第一行为一个整数N,表示河蟹词典的 ...

  4. DB2的常用指令

    注:大写的是固定的,小写的根据自己的实际情况 首先进入 命令窗口, win+r ---> 输入 db2cmd db2 1. 删除数据库 UNCATALOG DB db_name --db_nam ...

  5. Linux动静态库

    gcc编译过程 预处理,gcc -E,.c->.i 展开宏和头文件,替换条件编译,删除注释.空白和空行 编译, gcc -S,.i -> .s 检查语法规范 [消耗时间和系统资源最多] 汇 ...

  6. 006.CI4框架CodeIgniter, 加载框架的helper辅助类,调用helper类中的各种函数

    01. CI4框架作为一个很成熟的框架,给我们提供了很多helper辅助类,我们在代码中可以很方便的使用,如下所示,我们在Controllers中调用Cookies类的set_cookie函数 < ...

  7. IDA使用初步

    按空格看结构图,再按空格看汇编代码,按F5反编译 shift+F12 搜索中文字符串,通过字符串所在位置定位关键信息. 双击可能出flag的语句跳转至关键字符串. 想F5生成C伪代码,先crtl+X打 ...

  8. 吴裕雄--天生自然java开发常用类库学习笔记:线程常用的操作方法

    class MyThread implements Runnable{ // 实现Runnable接口 public void run(){ // 覆写run()方法 for(int i=0;i< ...

  9. Spark技术学院-进去能学到啥?

    Spark技术学院是什么? 主要是浪尖,前腾讯现阿里的大神一起搞的知识分享基地,旨在帮助大家由入门到精通spark,hbase,kafka大数据重要的框架,还有给入门小白指点入门方法,分享入门资料,对 ...

  10. CodeForces - 755C PolandBall and Forest (并查集)

    题意:给定n个数,Ai的下标为1~n.对于每一个i,Ai与i在同一个树上,且是与i最远的点中id最小的点(这个条件变相的说明i与Ai连通).求森林中树的个数. 分析:若i与Ai连通,则在同一个树上,因 ...