描述:為了適配iPhone 5s的64位處理器,在編譯選項中加入了arm64架構。但是發現工程在真機上可以編譯通過但是在模擬器上卻未編過。
問題解決:經研究在編譯選項中再加入x86_64架構,重新編譯工程就可以在模擬器上編譯成功了.
可以這樣理解armv7 , armv7s對應真機的32位處理器,i386對應模擬器的32位模擬器;arm64對應真機的64位,x86_64對應模擬器的64位。
使用了靜態庫,真機測試時正常,而在執行for iOS Device測試時報這個錯誤,很可能是因為靜態庫支持的架構不全。
解決辦法:
1. 選中Targets—>Build Settings—>Architectures。
把Build Active Architecture Only改為 NO。
2. 把最下面的Valid Architectures中的arm64參數刪掉就可以了