2015-11-03 25 views
6

mam stary projekt, który ja zrekompilowane dla uodate, i to jest teraz pokazuje ten komunikat o błędzie:brak wymaganego architektury x86_64

…. missing required architecture x86_64 in file myLibrary.a …. 

próbowałem różnych sztuczek, które udało mi się znaleźć w internecie po wyszukaniu na missing required architecture x86_64 in file, ale bez powodzenia. Ktoś wie, jak właściwie poradzić sobie z problemem?

Używam wersji Xcode 7.0.1.

Bieg:

lipo -info myLibrary.a 

pokazy:

Architectures in the fat file: myLibrary.a are: armv7 arm64 

I udało się dodać armv7s ale nie x86_64.

+0

czy dołączono standardową architekturę, w tym 64-bitową) (armv7, armv7s, arm64) –

Odpowiedz

4

Próbujesz zbudować uniwersalną bibliotekę i nie ma ona wszystkich istniejących w niej architektur armv7 armv7s i386 x86_64 arm64. Kompilator narzeka, gdy budujesz z architekturą 64-bitową.

Aby rozwiązać ten problem - Dodaj poniższe linie do swoich ustawień architektura statycznej projektu Biblioteka:

enter image description here

Wymaga ręcznego dodawania architektur coś takiego:

enter image description here

budowy biblioteka o tej architekturze zarówno na symulatorze urządzenia &, tworzenie biblioteki tłuszczu za pomocą lipo -create -output "myLibrary.a" ./Simulator/myLibrary.a ./Device/myLibrary.a i użyj go.

+0

Dzięki. Działa co najmniej do pewnego momentu. Bieg: lipo -info myLibrary.a teraz pokazuje: Architektury w pliku tłuszczu: myLibrary.a są: i386 ARMv7 armv7s x86_64 arm64 Ale teraz się to ostrzeżenie: ld: ostrzeżenie: plik obiektowy (myLibrary.a (myLibrary.o)) została zbudowana dla nowszej wersji iOS (7.0) niż jest połączona (6.0). To ma sens, ale nawet jeśli zmienię cel wdrożenia systemu iOS z wersji 6.0 na 7.0, pozostanie na tym poziomie. czego mi brakuje? – Michel

+0

Wygląda na to, że Twoja minimalna wersja systemu iOS, na której została zbudowana biblioteka, jest większa niż wersja systemu iOS używana w aplikacji konsumenckiej. Podczas budowania biblioteki (zarówno na urządzeniu, jak i na symulatorze) ustaw ** Minimalny docelowy poziom wdrożenia ** na ** 6,0 **. – Abhinav

+0

Biblioteka została zbudowana z docelowym miejscem wdrażania systemu iOS ustawionym na 7.0. Nie widzę żadnego docelowego minimum wdrożenia. – Michel

Powiązane problemy