Undefined symbols for architecture armv7:
来源:互联网 发布:angularjs遍历json 编辑:程序博客网 时间:2024/04/19 15:34
Undefined symbols for architecture armv7:
更新百度统计的时候遇到了这样的问题,可能有几个原因,我总结了两点
一个是在Xcode Build Phase 的Link Binary With Libraries 添加对应的库
另一个是这个库(我用的是百度统计)需要添加对应的framework
(百度统计说添加一个AdSuppport.framework,如果没有这个需求的话不要添加,但是个人觉得百度这个库太流氓了,必须添加才能解决问题)
解决完问题又出现了错误
duplicate symbol _protobuf_c_buffer_simple_append in:
/xxx-ios_trunk/xxx/BaiduMobStat/libBaiduMobStat.a(protobuf-c-DA882FF7B298838E.o)
/xxx-ios_trunk/xxx/BaiduMobStat/libBaiduMobStat.a(protobuf-c-5B50085BE1AF747D.o)
...
ld: 16 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
解决方法:
选中工程,target,切换到buildsetting标签,定位到other link flag,
输入: 去除-all_load,即可
至于为神马去掉 -all_load
包含静态库时候需要在Target的Other linker flags里面加上值:-objC,-all_load,-force_load
对于64位机子和iPhone OS应用
解决方法是使用-all_load 或者 -force_load。
-all_load强迫链接器从它能看见的所有文档中加载所有的对象文件,甚至那些没有OC代码的文档。
-force_load适用于Xcode3.2+版本,它允许finer得到文档加载的控制。每一个-force_load操作必须跟着一个文档路径,文档中的每一个对象文件将会被加载。
-all_load就是会加载静态库文件中的所有成员,
-ObjC就是会加载静态库文件中实现一个类或者分类的所有成员,
-force_load(包的路径)就是会加载指定路径的静态库文件中的所有成员。
举个例子
当链接一个包含类别的OC静态库时候,将会得到一个运行时异常:"selector not recognized"。你需要设置Other Linker Flags的值为-ObjC就OK了
当发布的时候把生产target的 other linker flages 里面的内容全部清除也没关系
- Undefined symbols for architecture armv7:
- Undefined symbols for architecture armv7:
- Undefined symbols for architecture armv7
- Undefined symbols for architecture armv7:
- Undefined symbols for architecture armv7
- Undefined symbols for architecture armv7:
- Undefined symbols for architecture armv7
- Undefined symbols for architecture armv7
- Undefined symbols for architecture armv7:
- undefined symbols for architecture armv7
- Undefined symbols for architecture armv7:
- Undefined symbols for architecture armv7
- c++ function Undefined symbols for architecture armv7
- Undefined symbols for architecture armv7:错误解决方法
- 问题:Undefined symbols for architecture armv7
- Undefined symbols for architecture armv7解决方案
- Undefined symbols for architecture armv7错误解决方案
- 【问题】"Undefined symbols for architecture armv7"
- 打入内部寻内幕
- FLEX内嵌套网页
- Cloudera Flume简介
- 开发日志:使用MyEclipse开发JavaWeb,无论怎么改Java代码都不生效,Tomcat报ClassNotFoundException错误
- 立博宣言
- Undefined symbols for architecture armv7:
- 李亚鹏离婚后自白:曾有过无数次自杀念头
- 12.04LTS下安装xp虚拟机
- 疯狂java 输出全排列
- SCANV团队:警惕Zimbra高危安全漏洞
- 蓝牙
- 呼叫转移
- IOS证书注册,大家共享
- 韩顺平资源