2013-07-09 10 views
27

więc wszystko było w porządku, a potem postanowił rozpocząć rozwijanie na XCode 5 DP3 i iOS7IOKit Nie znaleziono

Przed modernizacją, mój projekt opracowany i prowadził dobrze na moim iPhone 3GS (Zrobiłem trochę miękkie aplikacji telefonu); nie działa jednak na moim iPhonie 5; Byłem przekonany, że to fakt, że nie skonfigurowałem go jeszcze do architektury armv7s.

Potrafię zbudować i uruchomić wszystko dobrze na symulatorze, ale (i to po skonfigurowaniu aplikacji, aby zawierała architekturę armv7s) Nie mogę uruchomić go na obu moich urządzeniach.

otrzymuję ten błąd:

ld: framework not found IOKit 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Nie jestem nawet pewien, jak ktoś używa -v aby zobaczyć inwokację. Czytam gdzieś, gdzie IOKit jest tylko dla symulatora ... czy to oznacza, że ​​powinienem odłączyć go od mojej biblioteki podczas budowania na moim urządzeniu? I dlaczego nie otrzymałem tego błędu wcześniej, kiedy pracował nad moimi 3gs?

Moje założenie, dlaczego nie działa już na moich 3gs (chociaż błąd jest taki sam), to fakt, że jest to iOS 6, a SDK może obsługiwać tylko iOS 7 (obecnie mój iPhone 5).

Odpowiedz

9

Miałem ten sam problem, ale naprawiłem go, przechodząc do IOKit.framework w Xcode 4.6.3, klikając go prawym przyciskiem myszy i wybierając "Pokaż w Finderze". Właśnie skopiowałem go do tej samej względnej lokalizacji pod Xcode 5.

50

Najlepiej zrobić to, aż Apple wyda poprawkę.

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 . 
+0

Potwierdzam to rozwiązanie działa w XCode 5 i 5.0.1 GM – nanoman

+0

miło, to działało również dla mnie. – Jirapong

+0

Nie działa dla mnie w Xcode 5 i OSX 10.9.1 – Suge

3

Aby rozwiązać ten problem bez wycofywania oprogramowania Xcode można dodać brakujące IOKit.framework dowiązania wprowadzając następujące komendy w terminalu:

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 . # <- do not forget the dot!

Pamiętaj, aby wpisać cały adres katalogów podczas wykonywania operacja na dysku CD, jak na terminalu, nie sprawi, że zazwyczaj zmienisz katalog na plik .app.

Mam nadzieję, że to rozwiąże Twój problem!

10

Xcode wersja 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 . 
+1

+1 - to naprawdę zadziałało dla mojego problemu, bardzo miłe utrzymanie go. – YumYumYum

+0

Otrzymuję 'ln: ./IOKit: Plik istnieje. – AdamT

1

Na 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 wersje/A/IOKit.