私は iPhone 4s で Swift アプリを実行しようとしています。シミュレーターでは問題なく動作し、友人は iPhone 4s で正常に実行できます。私は iOS 8 と Xcode 6 の公式リリースを使用しています。
私が試してみました
- Xcode、iPhone、コンピュータを再起動する
- 清掃と再建
- 証明書/プロビジョニング プロファイルの取り消しと新しい作成
- Runpath検索パスは
$(inherited) @executable_path/Frameworks
- 埋め込みコンテンツにSwiftコードが含まれているかどうかは「はい」です
- コード署名アイデンティティは開発者
以下はエラーの全文です
dyld: Library not loaded: @rpath/libswiftCore.dylib
Referenced from: /private/var/mobile/Containers/Bundle/Application/LONGSERIALNUMBER/AppName.app/AppName
Reason: no suitable image found. Did find:
/private/var/mobile/Containers/Bundle/Application/LONGSERIALNUMBER/AppName.app/Frameworks/libswiftCore.dylib: mmap() error 1 at
address=0x008A1000, size=0x001A4000 segment=__TEXT in Segment::map() mapping
/private/var/mobile/Containers/Bundle/Application/LONGSERIALNUMBER/APPLICATION_NAME/Frameworks/libswiftCore.dylib
ベストアンサー1
私の場合、これまでの解決策はどれも機能しませんでした。ビルド設定に「常に Swift 標準ライブラリを埋め込む」フラグがあり、これを YES に設定する必要があることがわかりました。デフォルトでは NO でした。
Build Settings > Always Embed Swift Standard Libraries
これを設定したら、再度ビルドする前にプロジェクトをクリーンアップします。
熱心な読者のために説明最も重要な部分は次のとおりです。
図 2 に示すように、アプリで埋め込みコンテンツに Swift コードが含まれる (EMBEDDED_CONTENT_CONTAINS_SWIFT) ビルド設定を YES に設定します。このビルド設定は、ターゲットの製品に Swift コードを含むコンテンツが埋め込まれているかどうかを指定し、YES に設定すると、Xcode に Swift 標準ライブラリをアプリに埋め込むように指示します。
この旗は以前はEmbedded Content Contains Swift Code