warning: (armv7)

接入支付寶報出一堆警告解決方法warning: (armv7) /Users/lijiajia/Documents/work/sourcecode/alipaysdk/ios/ha304_cp_record_client_release_556515_20151203_mspc_iphone_msdk/AlipaySDK4Standard/AlipaySDK/Library/UTDID.framework/UTDID(UTDIDMain.o) unable to open object file: No such file or directory

報出的警告如下圖


解決方法如下圖




最近在引入了一個 framework 后狸眼,在 Generate dSYM 的時候報出了大量的 warning:

warning:(armv7)/Users/USERNAME/Library/Developer/Xcode/DerivedData/FRAMEWORKNAME-gizpafzckwvhuigzyzdtbpcvryue/Build/Intermediates/FRAMEWORKNAME.build/Debug-iphoneos/FRAMEWORKNAME.build/Objects-normal/armv7/SOMECLASS.o unable to open objectfile:No such file or directory

在 Xcode 查看編譯過程發(fā)現(xiàn)是執(zhí)行dsymutil這條命令時產(chǎn)生的劈愚。

dsymutil links the DWARF debug information found in the object files for an executable exe_path by using debug symbols information contained in its symbol table.

眾所周知镜硕,Xcode 編譯的時候會處理兩種符號:

Mach-O 符號:鏈接器在鏈接的時候需要處理茂浮。

調(diào)試符號:顧名思義双谆,在使用調(diào)試器調(diào)試用到的符號。

為了讓發(fā)行的安裝包更小席揽,通常會在編譯的時候?qū)⒄{(diào)試符號從可執(zhí)行文件中去掉顽馋。這樣,在發(fā)生 crash 后得到的 crash log 里面只能得到 16 進制的地址幌羞。

Xcode 提供了一個編譯設(shè)置項:Debug Information Format寸谜,有兩個選項:DWARF和DWARF with dSYM File。

其中属桦,DWARF是一種獨立于語言和操作系統(tǒng)的調(diào)試文件格式熊痴。最初是設(shè)計用來配合 ELF( Executable and Linkable Format,精靈和矮人 :])工作的聂宾。DWARF 不會在可執(zhí)行文件中包含調(diào)試符號果善,而是僅僅包含對 .o 文件的引用,而這些 .o 文件才真正包含調(diào)試符號系谐。

dSYM 是 Xcode 用來存儲調(diào)試符號的文件巾陕,可以用它來符號化 crash log 或者調(diào)試程序。我們需要編譯過程中產(chǎn)生的 .o 或者 .dSYM 文件配合才可以調(diào)試纪他。

如果Debug Information Format設(shè)置成了DWARF with dSYM File鄙煤,Xcode 在編譯結(jié)束時會調(diào)用dsymutil,將 .o 中的符號抽出來生成 .dSYM 文件茶袒。

(生成 .dSYM 文件需要消耗一定的時間梯刚,因為 debug 的時候本地有 .o 文件,可以不需要 .dSYM 文件來 debug薪寓,所以最好將 debug 版本的Debug Information Format設(shè)置成DWARF亡资。)

回頭來看最初的問題。使用

nm -a/path/to/foo.framework/foo

來查看所有的符號预愤,其中就包含了

000000005704a7a2 -030001OSO/Users/USERNAME/Library/Developer/Xcode/DerivedData/VIVerifyCore-gfjrgtjfcqfqpybbcyouhfavymdn/Build/Intermediates/FRAMEWORKNAME.build/Debug-iphonesimulator/FRAMEWORKNAME.build/Objects-normal/armv7/SOMECLASS.o

由此可見沟于,因為引入的 framework 編譯時開啟了Generate Debug Symbols,編譯出來的二進制文件包含了對一些 .o 文件的引用植康。這些 .o 文件是 framework 在編譯的過程中產(chǎn)生的旷太,framework 的使用方在執(zhí)行dsymutil時找不到它們,于是產(chǎn)生 warning。

在關(guān)閉Generate Debug Symbols后重新編譯 framework供璧,執(zhí)行同樣的命令存崖,生成的可執(zhí)行文件中就沒有這些引用了。再集成到 App 中睡毒,編譯就不會有前面提到的 warning来惧。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市演顾,隨后出現(xiàn)的幾起案子供搀,更是在濱河造成了極大的恐慌,老刑警劉巖钠至,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件葛虐,死亡現(xiàn)場離奇詭異,居然都是意外死亡棉钧,警方通過查閱死者的電腦和手機屿脐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來宪卿,“玉大人的诵,你說我怎么就攤上這事∮蛹兀” “怎么了西疤?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長次绘。 經(jīng)常有香客問我瘪阁,道長,這世上最難降的妖魔是什么邮偎? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任管跺,我火速辦了婚禮,結(jié)果婚禮上禾进,老公的妹妹穿的比我還像新娘豁跑。我一直安慰自己,他們只是感情好泻云,可當我...
    茶點故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布艇拍。 她就那樣靜靜地躺著,像睡著了一般宠纯。 火紅的嫁衣襯著肌膚如雪卸夕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天婆瓜,我揣著相機與錄音快集,去河邊找鬼贡羔。 笑死,一個胖子當著我的面吹牛个初,可吹牛的內(nèi)容都是我干的乖寒。 我是一名探鬼主播,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼院溺,長吁一口氣:“原來是場噩夢啊……” “哼楣嘁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起珍逸,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤逐虚,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后弄息,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體痊班,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年摹量,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片馒胆。...
    茶點故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡缨称,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出祝迂,到底是詐尸還是另有隱情睦尽,我是刑警寧澤,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布型雳,位于F島的核電站当凡,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏纠俭。R本人自食惡果不足惜沿量,卻給世界環(huán)境...
    茶點故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望冤荆。 院中可真熱鬧朴则,春花似錦、人聲如沸钓简。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽外邓。三九已至撤蚊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間损话,已是汗流浹背侦啸。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人匹中。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓夏漱,卻偏偏與公主長得像,于是被迫代替她去往敵國和親顶捷。 傳聞我的和親對象是個殘疾皇子挂绰,可洞房花燭夜當晚...
    茶點故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容