[ios专项]linker command failed with exit code 1问题收集整理

来源:互联网 发布:linux下java安装 编辑:程序博客网 时间:2024/06/03 16:43

linker command failed with exit code 1 这个问题 平时编译中经常遇到,但每次都没有统一的结果,这里只是把网上常见的和自己遇到的整理下,

后续遇到类似问题可做参考。


问题截图:




常见错误:


1. 出现 

#import "PlayersViewController.m"

解决方案: 

#import "PlayersViewController.h", 导入文件需要导入的是"xxx.h" 文件.


2. http://blog.csdn.net/duxinfeng2010/article/details/8265273

想用某个第三方类库的时候(如SBJson),我直接把类库文件copy到工程目录里面,然后一编译就出现这样错误(并不是一定会出这样错误),开始以为是网上下载的类库本身问题,所以重新找类库或者其他方式将它添加进去,只要不出错就行,也一直没有深入了解根本问题,今天在给工程添加一个FMDB(SQLIte第三方类库)文件编译时又出现这种错误,一开始以为工程问题,但是新建工程后还是出现这个问题,

解决方案:

在工作左边导航栏Target-->Build Phases-->compile Sources中,第三库库的所有.m文件都添加到里面,然后编译通过了;


3.http://ningmengjiabing.blog.163.com/blog/static/20484719820121172293918/

错误具体信息如下:

Undefined symbols for architecture i386:

  "_OBJC_CLASS_$_VRGCalendarView", referenced from:

      objc-class-ref in InquirePlanViewController.o

ld: symbol(s) not found for architecture i386

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

解决方法:
将相应的出现错误的.m文件,加入到build phases中的compile sources中就可以,就不截图了,可以去链接看.

4. http://blog.csdn.net/like7xiaoben/article/details/8133744

把 Valid Architectures  的值改为 armv7

过程:

PROJECT --> Build Settings --> Architectures --> Valid Architectures  他的值本来是 armv7 armv7s  (ios6.0下)  把armv7s 去掉即可

同样的操作

TARGETS -->  Build Settings --> Architectures --> Valid Architectures  做同样的修改



5. 简单拼写错误:

在设置不同文件的ARC时,需要输入:-fno-objc-arc,

今天手贱不小心输入成:-fno-obje-arc了,导致出现command failed with exit code 1.

像这种错误找起来非常困难,提醒大家后续修改相关配置文件时一定要谨慎,严谨!


未完待续,持续补充完善ing,也欢迎大家补充。。。

2014-07-11 












0 0
原创粉丝点击