2017-09-22 59 views
7

Niedawno zaktualizowałem do XCode 9 z 8.3.3.dyld: Biblioteka nie załadowana: @ rpath/libswiftCore.dylib tylko na XCode 9

Nasz projekt został napisany w Objective-C, podobnie jak wszystkie inne używane przez nas frameworki. Dodałem framework napisany w szybkim tempie (wersja 3.0). W XCode 8 jestem w stanie zbudować i uruchomić projekt bez problemu w symulatorze i na urządzeniu. W Xcode 9 jestem w stanie uruchomić projekt na symulatorze lub urządzenia z powodu błędu:

dyld: Library not loaded: @rpath/libswiftCore.dylib 
Referenced from: .../libraryname 
Reason: image not found 

Po obniżamy, udało mi się ponownie uruchomić projekt.

Moja konfiguracja posiada:

ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; 
STRIP_SWIFT_SYMBOLS = NO; 
SWIFT_VERSION = 3.0; 

Ktoś jeszcze ma podobny problem z xcode9? Czy ktoś wie, jak rozwiązać ten problem?

+0

Dodaj swoje ramy Select Target -> Ogólne -> Binaries Wbudowane –

+0

Biblioteka jest związane z wbudowanych Binaries i połączone ram i bibliotek. –

+0

Czy sprawdziłeś to https://stackoverflow.com/questions/26104975/dyld-library-not-loaded-rpath-libswiftcore-dylib-image-not-found –

Odpowiedz

0

Ramy Swift muszą być zbudowane w tej samej wersji Swift co Twój projekt (w tym przypadku Swift 4 inherantly od czasu uaktualnienia i jest uruchomiony przez Xcode 9).

Odbuduj i ponownie dodaj/zastąp strukturę z nową wersją, która powinna działać.

0

Czy używasz Kartaginy i masz wiele XCode_s na swoim komputerze? Ostatnio miałem problem, gdy uruchomiłem carthage update --use-ssh --platform iOS, podczas gdy w wierszu poleceń wybrano xcode8.3.3. Następnie dodano wbudowane struktury do kompilacji.

Aby działał w XCode9, musisz uruchomić komendę przełącznika sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer dla swojego Xcode.app i ponownie uruchomić cartage.

Mam nadzieję, że to pomaga.

0

Miał ten sam problem. Używam Xcode 9.2, Swift 4, a moje urządzenie działa w iOS 11.1.

Rozwiązanie:

Usunąłem firmy Apple Worldwide Developer Relations Certificate Authority w Dostęp do pęku kluczy i zastąpić ją nową (można pobrać certificate here)

potem zmieniłem "Trust" (dwukrotnie kliknij certyfikat) z "Zawsze ufaj" do "Domyślny system".

+0

Próbowałem, to nie rozwiązało problemu. – Rao