以前に問題が発生していたアプリをシミュレーターで実行しようとしています。 i386
用にビルドされたlibjpeg.aはありませんが、x86_64
はあります。これが唯一の依存関係ですが、i386
macで実行しているのに、なぜx86_64
シンボルが実際に必要なのか疑問に思っています。
IOSシミュレータは、アプリを32ビットモードと64ビットモードで実行できます。これにより、64ビットの問題の多くを解決し、armv7とarm64の両方に対応できるようにすることができます。これを行うには、アプリをi386とx86_64用にコンパイルし、両方のアーキテクチャ用のライブラリが必要です。
iOSアプリは、多くの異なるアーキテクチャーで実行する必要があります。
arm7: Used in the oldest iOS 7-supporting devices
arm7s: As used in iPhone 5 and 5C
arm64: For the 64-bit ARM processor in iPhone 5S
i386: For the 32-bit simulator
x86_64: Used in 64-bit simulator
実際i386アーキテクチャはiPhoneシミュレータ用であり、x86_64アーキテクチャはiPadシミュレータ用であり、32ビットと64ビットの両方に対応しています。