Xcode10.2無法將專案執行到iOS10以下的模擬器上

LinXunFeng發表於2019-04-29

本來想在iOS9模擬器上執行公司的專案看下效果,下了個模擬器老半天終於下載好了,高高興興一執行,結果直接crash...

報錯內容

crash

dyld_sim`dyld_fatal_error:
    0x106bb6000 <+0>: int3   
->  0x106bb6001 <+1>: nop  
複製程式碼
dyld: Library not loaded: /usr/lib/libauto.dylib
  Referenced from: /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
  Reason: no suitable image found.  Did find:
	/usr/lib/libauto.dylib: mach-o, but not built for iOS simulator
(lldb) 
複製程式碼

Xcode10.2 + iOS9.3之前的版本都會出現這個問題

實驗

如圖,心情拔涼拔涼的 Or2,接著下了iOS10.1試著執行一下,一切OK。

後面做了個實驗,建立一個純OC和純Swift的測試專案,進行了如下測試

型別 模擬器上執行結果
純OC iOS9以上都執行成功
純Swift iOS9執行失敗,iOS10以上執行成功
OC和Swift混編 iOS9執行失敗,iOS10以上執行成功

結論:很顯示,只要包含了Swift程式碼就會在iOS9模擬器上執行失敗,而iOS9真機上則沒有任何問題。

解決方案

開啟終端,執行一下該命令就可以了,其中 iOS 9.1.simruntime 需要根據自己的情況修改版本號

sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.1.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'
複製程式碼

命令出處:蘋果官網的 xcode_10_2_1_release_notes

微信公眾號

相關文章