常见链接错误

常见链接错误

阅读原文

编译链接的时候报错,算是初学者遇到的比较头疼的问题之一了。现在总结一下,在项目中遇到了链接错误。

1.“OBJC_CLASS$_xx” 错误

Undefined symbols for architecture i386:
"OBJC_CLASS$_ASIdentifierManager", 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)

分析:看错误提示,没有找到ASIdentifierManager这个文件,可能是我们没有倒入相关的框架,或者缺少相应的文件(头文件、实现文件等等)。

解决办法:我们需要看看工程中有没有相应的实现文件、头文件,或者看看有没有倒入相关的框架。
例如本例,缺少了相应的框架,导入AdSupport.framework ,编译成功。

2.“OBJC_CLASS$_xx” 错误

这个看起来跟第一个一样,但是我们把第一个错误中的解决办法都尝试了之后,发现还是编译不成功,这时候心中就一万匹草泥马,呼啸而过了。例如:

Undefined symbols for architecture x86_64:
"OBJC_CLASS$_PPAppPlatformKit", referenced from:
objc-class-ref in libPlugin25PP.a(IAPOnline25PP.o)
objc-class-ref in libPlugin25PP.a(PPWrapper.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

死活找不到原因,重新阅读,相关的接入文档,发现模拟器不能运行,只有真机才能运行。认真阅读接入文档很关键啊!!!

因此OBJC_CLASS$_xx” 错误,最后的解决办法,看看是否是要求只能在真机或者模拟器上才能运行。这类错误一般再介入别人的sdk的时候比较常见。

3.“duplicate symbol xx”错误

分析:字面意思,我们项目中的xx(文件名、类名、全局变量名称)有重复出现的情况。
解决办法: 仔细察看工程,删除或者修改,提示中出现的xx。
常见错误的情况:同时介入好几个sdk的时候,不同的sdkyou相同的文件名,类名,全局变量名等等。因此,制作sdk的时候,最重要的就是因该再我们的类中,文件中,统一加上前缀,防止别人使用的时候出现冲突。

duplicate symbol xx 示例

4."clang: error: -fembed-bitcode is not supported on versions of iOS prior to 6.0" 错误

解决办法:解决办法:在build setting里面设置查找“enable_bitcode”,并且改为NO

5.运行时候崩溃。“Terminating app due to uncaught exception 'NSGenericException', reason: Collection <__NSArrayM: 0x615c6a0> was mutated while being enumerated”

原因: 遍历数组的过程中对它里面的数据进行了修改,不能使用for in 或者枚举器法 遍历(可以把遍历的结果保存下来,等遍历完成之后进行修改), 因该使用for循环来进行 。即,我们在遍历数组的时候,不能对它进行修改之类的操作,不然鬼知道会发生什么事情。(我理解的大概就是这个意思)

6.在使用c++ 的string类的时候,出现链接错误:

string_link_error.png

分析:看样子是直接找不到std::string 这个用法了,在我的调用string类的方法中,说明使用的这个string库有问题。所以尝试解决一下Xcode工程中配置的c++ 的标准库.

解决办法:在当前工程的TARGET中在Build Settings搜索lib , 找到C++ Standadr Libary ,libc++(支持c++11的那一个),有时候可能是Compiler Default。然后问题完美解决!

7.Symbol not found: _ NSDictionary0 ___

Referenced from:
/private/var/mobile/Cotainers/Bundle/Applecation/xxxxxx

Expected in:
/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
in /private/var/mobile/Containers/Bundle/Applecation/xxxxx

Symbol not found.png

分析:工程中找不到相应的系统库,可能发生在工程运行在较低版本的手机系统中,会报错。

解决办法: 首先查看,工程中有没有添加CoreFoundation.frameowrk ,这个动态库,如果有的话,可以尝试把CoreFoundation.framework 的Status由Required改为Optional

未完待续,希望小伙伴们继续补充!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,108评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,699评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,812评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,236评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,583评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,739评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,957评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,704评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,447评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,643评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,133评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,486评论 3 256
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,151评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,889评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,782评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,681评论 2 272

推荐阅读更多精彩内容

  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,636评论 0 9
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,577评论 25 707
  • ios 常见问题解决 一,libxml/HTMLparser.h file not find 第一种方法: 点击左...
    rlqs阅读 3,772评论 0 1
  • 一,libxml/HTMLparser.h file not find 第一种方法:点击左边项目的根目录,再点击右...
    幻想no现实阅读 7,888评论 1 8
  • 人生路漫长,我们每个人都是这条路上的行人,只不过是各有各的方向。要谈人生梦想实现了几个,只能是在这条路上我们能有...
    一路芬芳伴着花开阅读 167评论 0 0