building for iOS Simulator, but linking in object file built for iOS

ld: building for iOS Simulator, but linking in object file built for iOS, file 'xxx/Pods/mob_sharesdk/ShareSDK/Support/PlatformConnector/QQConnector.framework/QQConnector' for architecture arm64

上篇文章講了M1芯片安裝CocoaPods問題遭笋,剛剛配置好pods環(huán)境管怠。新的問題又出現(xiàn)了:運行項目時坛吁,編譯不通過凤薛,模擬器報錯收厨,出現(xiàn)了上面的問題缴啡,而真機是可以運行的!Xcode版本12.4骂际,模擬器是iOS14.4疗琉。而且在我電腦上(15款Macbook Pro)模擬器可以運行,真機也可以運行歉铝,新買的電腦M1芯片的運行卻報錯盈简。
看了網(wǎng)上的內(nèi)容,大致有幾種方案都試了還是不行太示!

  1. 搜索VALID_ARCHS字段柠贤,將里面的值去掉或加上x86_64类缤,或?qū)⒄麄€字段刪除坚俗。我搜索之后卻沒有個這值降允。
  2. 在Build Settings下Architecture中Excluded Architecture 屬性加上 arm64幢尚,并且Build Active Architecture Only 設置為 NO尉剩。
  3. 刪除.xcworkspace和Podfile.lock文件础倍,重新pod install;刪除Xcode緩存,點擊訪達Shift + command + G進入,輸入~/Library/Developer/Xcode/DerivedData,刪除里面的全部文件芽腾;多次重啟Xcode阴绢。

在進行第二種方法的時候腺兴,出現(xiàn)以下錯誤

Cocoapods ld: library not found for -lPods-Projectname

解決方法(附件參考文章1)是在Build Phases下Link Binary With Libraries刪除libPods-Projectname.a闰蚕。然后出現(xiàn)缺少x86_64和i386涩哟,在arm64那加上這兩個還是不可以诗鸭,于是放棄了這種方法染簇!
以上方法都試了,都不行强岸!感覺是pods設置的問題锻弓,多次注掉Podfile文件里的庫,然后執(zhí)行pod install蝌箍,還是報錯青灼!

然后找到了一篇文章(附件參考文章2)中的解決方法

  1. 在Excluded Architecture下增加 Any iOS Simulator SDK屬性,值是arm64妓盲,并且Build Active Architecture Only 都設置為 YES(NO的話也運行不了)杂拨。

  2. Podfile或Podspec文件中設置

  • Podfile文件中增加代碼:
post_install do |installer|
  installer.pods_project.build_configurations.each do |config|
    config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
  end
end

然后執(zhí)行pod install,執(zhí)行后會自動在Podspec中添加上面的pod設置代碼悯衬。

  • 在Podspec文件中添加pod設置代碼:
s.pod_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }
s.user_target_xcconfig = { 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'arm64' }

然后執(zhí)行pod install

到這里模擬器就可以運行了弹沽,經(jīng)測試真機也能正常運行。不像網(wǎng)上說的還要改回來真機才可以運行筋粗!
  • 但是在執(zhí)行pod install的時候終端出現(xiàn)了以下警告:
[!] The `HaoYaoZaiXianB [Debug]` target overrides the `EXCLUDED_ARCHS[sdk=iphonesimulator*]` build setting defined in `Pods/Target Support Files/Pods-HaoYaoZaiXianB/Pods-HaoYaoZaiXianB.debug.xcconfig'. This can lead to problems with the CocoaPods installation
    - Use the `$(inherited)` flag, or
    - Remove the build settings from the target.

[!] The `HaoYaoZaiXianB [Release]` target overrides the `EXCLUDED_ARCHS[sdk=iphonesimulator*]` build setting defined in `Pods/Target Support Files/Pods-HaoYaoZaiXianB/Pods-HaoYaoZaiXianB.release.xcconfig'. This can lead to problems with the CocoaPods installation
    - Use the `$(inherited)` flag, or
    - Remove the build settings from the target.

于是按照提示在Excluded Architecture下Debug和Release后面值增加$(inherited)策橘。然后執(zhí)行pod install就沒有警告了!
我又按照文章里的其他方法試了娜亿,也不可以丽已。最后pod環(huán)境都搞壞了,出現(xiàn)錯誤
failed to read asset tags: Error Domain=NSPOSIXErrorDomain Code=9 "Bad file
只能刪掉.xcworkspace和Podfile.lock文件买决,重新pod install沛婴。果然重新恢復正常吼畏!

到這里就基本結(jié)束了,總結(jié)一下方法:
  1. Excluded Architecture中Debug和Release添加Any iOS Simulator SDK屬性嘁灯,添加值arm64并且設置Active Architecture都為YES
  2. Podfile文件添加設置泻蚊,在指定source源后面(target前添加)添加
post_install do |installer|
  installer.pods_project.build_configurations.each do |config|
    config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
  end
end
  1. Excluded Architecture中Debug和Release后面值增加$(inherited),去除pod install警告

原因在參考文章里有旁仿,因為是英文的(本人英文能力有限)藕夫,具體原因我也是一知半解,只知道是M1芯片(與Intel芯片架構(gòu)不同)才有這個問題枯冈!至于后續(xù)這樣設置會出現(xiàn)其他問題嗎,我也不清楚办悟!但是項目卻是可以正常運行的尘奏,而且真機調(diào)試的時候不用刪除設置,省去了很多麻煩病蛉!

參考文章:

  1. stackoverflow參考文章1
  2. stackoverflow參考文章2
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末炫加,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子铺然,更是在濱河造成了極大的恐慌俗孝,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件魄健,死亡現(xiàn)場離奇詭異赋铝,居然都是意外死亡,警方通過查閱死者的電腦和手機沽瘦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門革骨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人析恋,你說我怎么就攤上這事良哲。” “怎么了助隧?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵筑凫,是天一觀的道長。 經(jīng)常有香客問我并村,道長巍实,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任橘霎,我火速辦了婚禮蔫浆,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘姐叁。我一直安慰自己瓦盛,他們只是感情好洗显,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著原环,像睡著了一般挠唆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上嘱吗,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天玄组,我揣著相機與錄音,去河邊找鬼谒麦。 笑死俄讹,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的绕德。 我是一名探鬼主播患膛,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼耻蛇!你這毒婦竟也來了踪蹬?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤臣咖,失蹤者是張志新(化名)和其女友劉穎跃捣,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體夺蛇,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡疚漆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了蚊惯。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片愿卸。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖截型,靈堂內(nèi)的尸體忽然破棺而出趴荸,到底是詐尸還是另有隱情,我是刑警寧澤宦焦,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布发钝,位于F島的核電站,受9級特大地震影響波闹,放射性物質(zhì)發(fā)生泄漏酝豪。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一精堕、第九天 我趴在偏房一處隱蔽的房頂上張望孵淘。 院中可真熱鬧,春花似錦歹篓、人聲如沸瘫证。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽背捌。三九已至毙籽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間毡庆,已是汗流浹背坑赡。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留么抗,地道東北人毅否。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像乖坠,于是被迫代替她去往敵國和親搀突。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354

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