运行几年前做的项目,发现各种编译报错,一个一个解决记录下:

  1、Xcode(Xcode9)编译运行报错,但是在 issue navigatior 栏看不到错误信息;

    解决方案:在 show report navigator 栏查看编译错误信息:

  Showing All Messages

  The operation couldn’t be completed. Unable to log in with account '**@**.com'. (The login details for account '**@**.com' were rejected.)

    

    根据错误信息显示,说这个账户失效了(之前公司的Apple ID),需要在偏好设置中移除相应账户即可。

    

    继续编译,下一个报错信息:

  2、error: implicit declaration of function 'ether_ntoa' is invalid in C99 [-Werror,-Wimplicit-function-declaration]

strcpy(temp, (char *)ether_ntoa(LLADDR(sdl)));

    解决方案:找到错误位置,引用类库:

    导入这三个头文件即可,
    #include <sys/types.h>
    #include <sys/socket.h>
    #include <net/ethernet.h>     然后上面那行代码会有一个警告:"Incompatible pointer types passing 'caddr_t' (aka 'char *') to parameter of type 'const struct ether_addr *'" ;
    可以在LLADDR的前面加上(const struct ether_addr *) 也就是这样:
    strcpy(temp, (char *)ether_ntoa((const struct ether_addr *)LLADDR(sdl)));
    这样就没有警告了。

  3、.xib: Compiling IB documents for earlier than iOS 7 is no longer supported. 工程是14年之前 Xcode创建的,升级到Xcode9后报错。

    解决方案:将builds For 改成 iOS10之后就可以了。

    

    解决完成,大功告成,编译运行成功。接下来就是各种适配问题了 。


Xcode 编译运行旧项目报错解决之路的更多相关文章

  1. 运行springboot项目报错:Field userMapper in XX required a bean of type 'xx' that could not be found.

    运行springboot项目报错: *************************** APPLICATION FAILED TO START ************************** ...

  2. Android——eclipse下运行android项目报错 Conversion to Dalvik format failed with error 1解决

    在eclipse中导入android项目,项目正常没有任何错误,但是运行时候会报错,(clean什么的都没用了.....)如图: 百度大神大多说是jdk的问题,解决: 右键项目-Properties如 ...

  3. quick3.3final版创建项目报错解决

    PHP Notice:  Undefined index: QUICK_V3_ROOT in 405,469,497,520,551这5行代码都访问了一个环境变量$_ENV['QUICK_V3_ROO ...

  4. Mac运行React Native安卓项目报错解决

    传送门参考: 下面的这个链接很详细了,一步一步就好.... https://github.com/NARUTOyuyang/React-Native 然而在运行react-native run-and ...

  5. npm run dev运行Vue项目报错:Node Sass does not yet support your current environment

    导入Vue项目后,#npm run dev 报错: error in ./src/pages/hello.vue Module build failed: Error: Node Sass does ...

  6. 运行springboot项目报错 Error running 'ResourceApplication': Command line is too long. Shorten comma

    方法1 IDEA 运行报错:Error running '***': Command line is too long 技术标签: IDEA     Error running 'Test': Com ...

  7. IDEA新建SpringMVC项目报错解决办法

    网页运行的错误: HTTP Status 500 - Handler processing failed; nested exception is java.lang.NoClassDefFoundE ...

  8. 运行gulp项目报错:AssertionError: Task function must be specified。

    一.问题描述: gulp项目在本地windows 10机器上跑没有任何问题,但是放在centos 7虚拟机上跑报错:AssertionError: Task function must be spec ...

  9. 【原创】Eclipse导入Android项目报错解决

    1.点击报错的项目--->右键--->Properties--->选择Android--->将Project Build Target选择其一勾上-->Is Librar ...

随机推荐

  1. Learn from Niu 2020.1.21

    1. 你一定要看计算机领域的文章. 如果你是看一堆应用,你最终还是会不知道怎么做. 从计算机到energy是降维打击, 当你学习了计算机的hot skill,再去做应用很容易. 2. 搞研究的思路: ...

  2. PP: Overviewing evolution patterns of egocentric networks by interactive construction of spatial layouts

    Problem: get an overall picture of how ego-networks evolve is a common challenging task. Existing te ...

  3. leetcode 925. Long Pressed Name

    判定是否长按 var isLongPressedName = function (name, typed) { var i = 1, j = 0, n = name.length, m = typed ...

  4. word文档巧替换(空行替换、空格替换、软回车替换成硬回车)

    一.空行替换 在日常工作中,我们经常从网上下载一些文字材料,往往因空行多使得页数居高不下.一般方法是:在“编辑”菜单中打开“查找和替换”对话框(或按ctrl+H),在“查找内容”中输入“^p^p”“替 ...

  5. 第三十篇 玩转数据结构——字典树(Trie)

          1.. Trie通常被称为"字典树"或"前缀树" Trie的形象化描述如下图: Trie的优势和适用场景 2.. 实现Trie 实现Trie的业务无 ...

  6. python UI自动化之切换iframe

    python+selenium写UI自动化的时候,经常会遇到需要切换iframe的情况,这里介绍几种切换iframe的方式 1.使用id定位 driver.switch_to.frame(" ...

  7. 【StarUML】 活动图

    StarUML中的活动图本质上是流程图,活动图相对来说,更加专业,它有对信号的处理,对状态动作.数据区别表示,使得更清晰地了解控制流的走向. 1.基本元素 a.活动状态图(Activity).动作状态 ...

  8. day14 tar

    04. 系统中如何对文件进行压缩处理 压缩的命令 tar 压缩命令语法: tar zcvf /oldboy/oldboy.tar.gz 指定要压缩的数据文件 z 压缩的方式 为zip c 创建压缩包文 ...

  9. 使用命令行生成动态库dll

    1.安装开发工具,比如visual studio或者mingw等等.下面以visual studio编译器cl作为讲解. 2.导出dll中的函数基本使用两种方式,可以使用关键字__declspec(d ...

  10. macos 杀掉端口 命令行

    sudo lsof -i:3000 kill 11111 1111就是pid下面的数字