だから、すべてが順調だったので、XCode 5 DP3とiOS7で開発を始めることにしました
アップグレード前に、私のプロジェクトは私のiPhone 3GSでコンパイルされて正常に動作しました(私は少しソフトな電話アプリケーションを作成しました)。ただし、私のiPhone 5では動作しませんでした。まだarmv7sアーキテクチャを含めるように構成していないのは、このためだと確信していました。
シミュレータですべてを問題なく構築して実行できますが、これは(armv7sアーキテクチャを組み込むようにアプリを構成した後)、どちらのデバイスでも実行できません。
私はこのエラーを受け取ります:
ld: framework not found IOKit
clang: error: linker command failed with exit code 1 (use -v to see invocation)
呼び出しを確認するために-vをどのように使用するかさえわかりません。 IOKitがシミュレータ専用である場所をいくつか読んだ...これは、デバイスでビルドするときにライブラリからリンクを解除する必要があることを意味しますか?そして、なぜそれが私の3gsで動作していたときに、以前にこのエラーが発生しなかったのですか?
(エラーは同じですが)3gsで動作しなくなった理由についての私の仮定は、それがiOS 6であり、SDKがiOS 7のみをサポートしているという事実です(私のiPhone 5は現在サポートしています)。
Appleが修正を発行するまで、これを行うのが最善です。
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/IOKit.framework
Sudo ln -s Versions/A/IOKit .
Xcodeバージョン5.1.1(5B1008)
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/IOKit.framework
Sudo ln -s Versions/A/IOKit .
同じ問題がありましたが、IOKit.framework
Xcode 4.6.3で右クリックし、[Show in Finder]を選択します。 Xcode 5で同じ相対位置にコピーしました。
Xcodeソフトウェアをロールバックせずにこれを修正するには、ターミナルに次のコマンドを入力して、不足しているIOKit.frameworkシンボリックリンクを追加します。
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/ iPhoneOS7.0.sdk/System/Library/Frameworks/IOKit.framework
Sudo ln -s Versions/A/IOKit。 #<-ドットを忘れないでください!
端末は通常、ディレクトリを.appファイルに変更するのを嫌うので、cd操作を実行するときは、必ずディレクトリアドレス全体を入力してください。
これで問題が解決することを願っています!
IPhoneOS10.2.sdkの場合
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.2.sdk/System/Library/Frameworks/IOKit.framework
Sudo ln -s Versions/A/IOKit。