文档章节

添加第三方类库造成的linker command failed with exit code 1 (use -v to see invocation)的错误调试

AK_47
 AK_47
发布于 2014/07/13 23:16
字数 443
阅读 25
收藏 0


        linker command failed with exit code 1 (use -v to see invocation)这个错误貌似遇见并不止一次,当我想用某个第三方类库的时候(如SBJson),我直接把类库文件copy到工程目录里面,然后一编译就出现这样错误(并不是一定会出这样错误),开始以为是网上下载的类库本身问题,所以重新找类库或者其他方式将它添加进去,只要不出错就行,也一直没有深入了解根本问题,今天在给工程添加一个FMDB(SQLIte第三方类库)文件编译时又出现这种错误,一开始以为工程问题,但是新建工程后还是出现这个问题,经过网上查找,得到了解决办法;


Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_FMDatabase", referenced from:
      objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)




在网上得到解决办法是:

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




添加.m文件



根据对比可以看见 in FMDBTest,FMDBTest的Target里添加进去了了一些.m文件



对于以上错误,根据网友解答我的理解是

我们在使用这些第三方类库文件时直接将其拖拽到工程之中,编译的的时候Xcode也没有自动引用,所以造成这样错误,这就需要我们手动添加。假如我们在工程中新建某个文件就不会出现这样问题;


参考  http://blog.hsin.tw/2012/ios-dev-undefined-symbols-for-architecture-i386/




© 著作权归作者所有

AK_47
粉丝 16
博文 533
码字总数 569998
作品 0
嘉定
程序员
私信 提问
iOS开发中Xcode编译错误 linker command failed with exit co

iOS开发中Xcode编译错误 linker command failed with exit code 1 (use -v to see invocation) 的解决办法 发表于2015/5/15 8:54:36 220人阅读 分类: iOS objective-c 版权归Aaidong所有〜转......

海二少
2016/04/15
308
0
添加第三方类库造成的linker command failed with exit code 1 (use -v to see invocation)的错误调试

linker command failed with exit code 1 (use -v to see invocation)这个错误貌似遇见并不止一次,当我想用某个第三方类库的时候(如SBJson),我直接把类库文件copy到工程目录里面,然后一编...

孙启超
2013/11/21
869
0
出现( linker command failed with exit code 1)错误总结

出现( linker command failed with exit code 1)错误总结 这种问题,通常出现在添加第三方库文件或者多人开发时。 这种问题一般是找不到文件而导致的链接错误。 我们可以从如下几个方面着手...

夕阳_jhe
2015/10/13
130
0
EGORefreshTableHeaderView引入错误

1, 在使用下拉刷新类库EGORefreshTableHeaderView的时候,将资源文件添加到工程中,但是忘记假如QuartzCore.framework框架,造成编译错误: Undefined symbols for architecture i386: "_C...

宇宙执政
2013/06/18
1K
0
使用SVN clang: error: linker command failed with exi

再把项目上传到SVN仓库上,然后再拉到本地编译时出现如下错误 [objc] view plain copy ld: library not found for -lxxxxxxxxxxxx clang: error: linker command failed with exit code 1 (......

海二少
2016/04/15
18
0

没有更多内容

加载失败,请刷新页面

加载更多

分享一个 pycharm 专业版的永久使用方法

刚开始接触Python,首先要解决的就是Python开发环境的搭建。 目前比较好用的Python开发工具是PyCharm,他有社区办和专业版两个版本,但是社区版支持有限,我们既然想好好学python,那肯定得用...

上海小胖
33分钟前
5
0
Spring Cloud Alibaba 实战(二) - 关于Spring Boot你不可不知道的实情

0 相关源码 1 什么是Spring Boot 一个快速开发的脚手架 作用 快速创建独立的、生产级的基于Spring的应用程序 特性 无需部署WAR文件 提供starter简化配置 尽可能自动配置Spring以及第三方库 ...

JavaEdge
今天
7
0
TensorFlow 机器学习秘籍中文第二版(初稿)

TensorFlow 入门 介绍 TensorFlow 如何工作 声明变量和张量 使用占位符和变量 使用矩阵 声明操作符 实现激活函数 使用数据源 其他资源 TensorFlow 的方式 介绍 计算图中的操作 对嵌套操作分层...

ApacheCN_飞龙
今天
8
0
五、Java设计模式之迪米特原则

定义:一个对象应该对其他对象保持最小的了解,又叫最小知道原则 尽量降低类与类之间的耦合 优点:降低类之间的耦合 强调只和朋友交流,不和陌生人说话 朋友:出现在成员变量、方法的输入、输...

东风破2019
昨天
25
0
jvm虚拟机结构

1:jvm可操作数据类型分为原始类型和引用类型,因此存在原始值和引用值被应用在赋值,参数,返回和运算操作中,jvm希望在运行时 明确变量的类型,即编译器编译成class文件需要对变量进行类型...

xpp_ba
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部