Xcode 10.2 не вдалося запустити програму на симуляторі з iOS <10


77

Я бавився з Xcode 10.2 з моменту оновлення, і коли я намагаюся запустити свій додаток на БУДЬ-якому симуляторі з версією iOS менше 10, симулятор не запускається і не спрацьовує, тоді відображається помилка нижче:

dyld: Бібліотека не завантажена: /usr/lib/libauto.dylib Посилання з: /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation Причина: відповідне зображення не знайдено. Знайшов: /usr/lib/libauto.dylib: mach-o, але не побудований для симулятора iOS

Я спробував створити новий новий проект, не торкаючись нічого, встановив ціль розгортання на iOS 9 і знову запустив на симуляторі iOS 9, та сама помилка була показана.

ОНОВЛЕННЯ

Здається, ця проблема виникає лише тоді, коли ваша база коду містить швидкий. Створений новий проект із цільовою базою коду c не розбив симулятор. Для швидкого так.

РЕЗЮМЕ

  1. Xcode 10.2 містить швидкий код, який не може запустити програму на симуляторі з iOS 9
  2. Я зробив все очищення та видалення даних отримання, і проблема все ще залишається.

Хто-небудь має ідею?

ЗАКЛЮЧНЕ ОНОВЛЕННЯ

Apple просто випустила Xcode 10.2.1, і це є частиною відомої проблеми для симулятора. Будь ласка, зверніться до посилання нижче для обхідного рішення / виправлення:

https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_1_release_notes

Вдячний за відповідь @russbishop, відповідь прийнято


У мене точно така ж проблема, та сама версія Xcode. Спробував почистити / перевстановити. Навіть спробував якусь магію з наданням профілю / сертифікатів. Досі не працює.
Костянтин

Ця помилка стосується лише симулятора, або вона також зламається на пристрої iOS 9.3?
Бріджер Максвелл

Він працював з реальним пристроєм 9.3.5. Але не працювати з тренажером.
ko2ic

Дуже хороший звіт, дякую, що дотримуєтесь цієї резолюції.
matt

Відповіді:


111

Це відома помилка, яка впливає на iOS 8.x та 9.x. Ви можете обійти це, створивши /usr/lib/swiftкаталоги у відповідному кореневому середовищі виконання симулятора.

Час роботи завантаженого симулятора знаходиться в /Library/Developer/CoreSimulator/Profiles/Runtimes.

Наприклад, щоб виправити симулятор iOS 9.3:

sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.3.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'

7
Перш ніж запускати mkdir, переконайтеся, що „iOS 9.3.simruntime” ще не існує. Для мене в папці '... / RuntimeRoot / usr / lib / swift' відсутня папка 'swift'. Просто перейдіть до '/ Library / Developer / CoreSimulator / Profiles / Runtimes / iOS 9.3.simruntime / Contents / Resources / RuntimeRoot / usr / lib' і створіть папку для 'швидкого' виправлення.
bauerMusic

Я спробував незліченну кількість рішень, і тільки це спрацювало. Дуже дякую!
Fan Jin

13

У мене також виникла така сама проблема під час запуску в симуляторі iOS 9.0.

З https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_1_release_notes

Симулятори для iOS 9.3 і раніше можуть не запускати програми Swift із повідомленням: “dyld: Бібліотека не завантажена: /usr/lib/libauto.dylib”. (49326587) Вирішення: Запустіть таку команду в Терміналі для відповідної версії iOS:

sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.3.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'

Для цього яблука, наведеного вище рішення в цьому посиланні.

Просто

-> відкрити термінал

-> Введіть цей рядок із потрібною версією (у моєму випадку я змінився на iOS 9.3 на iOS 9.0)

Приклад: sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.0.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'

-> Введіть пароль

-> Тепер очистіть Xcode і запустіть знову

Це вище рішення спрацювало для мене.


7

Це здається помилкою iOS Simulator. Я бачу, що це відбувається на симуляторах з iOS 12.0, але не на тих з 12.4.


Це врятувало мій розум !! Так, здається, це лише помилка симулятора 12.0.
user1366265

5

Все-таки отримайте цю помилку з Xcode 10.3. (Пропущено через 10.2.)


1
Це не Swift 10.3
iOS

4

Я зіткнувся з цією проблемою, коли проходив модульне тестування для iOS11та iOS12.1наXcode11.1

Рішенням було просто запустити модульні тести за допомогою симулятора iOS13.


2

Досить прикрий обхідний шлях: використовуйте Xcode 10.1 для розгортання на симуляторах 9.x. Тільки так я міг обійти це.


2
не спрацює, якщо
чийсь

2
Так, чудовий момент. Просто зверніться до найважливішої відповіді та офіційної роботи:sudo mkdir '/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.3.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift'
cumanzor

"Немає такого файлу чи каталогу"
Педро Пауло Аморім,

2

Жодне з перерахованого не працювало для мене. Моя проблема така ж, як і ця, але я створював додаток для macOS.

Запуск Xcode 11цільового проекту, 10.4поки моя ОС є Mojave 10.4.6.

Мені довелося встановити Xcode 10.3та використовувати це. З тих пір проблем немає.

Я думаю, це проблема з ОС Xcode versionта цільовим проектом.


1
Так, варто зазначити, що Xcode 11 + Catalina більше не підтримує симулятори iOS9.x.
cumanzor

0

Довевшись використовувати Xcode 10.2.1, у мене виникла ця проблема з іншою бібліотекою, і в підсумку мені довелося встановити завжди вбудовувати швидкі бібліотеки в ТАК у налаштуваннях збірки, оскільки бібліотека, про яку йдеться, знаходилась у фреймворковому файлі, який я мав.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.