Чому я отримую ibtool не вдалося з кодом виходу 255?


129

Раптом я не можу створити свій проект. Я отримую таку помилку компілятора:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/ibtool не вдалося з кодом виходу 255

Я отримую цю помилку за цілу купу моїх файлів xib. Будь-які ідеї, що відбувається, і що таке рішення?

Використання Xcode 4.6, iOS 6.1.


Чи можете ви відмовити XIB? Чи використовуєте ви керування джерелами, як git, щоб побачити, що змінилося в xib "раптом"?
bryanmac

@bryanmac Я використовую git, але проблема була у багатьох файлах xib, багатьох з яких я не торкався. Здається, ця проблема була помилкою Xcode, яку було вирішено перезавантаженням Xcode кілька разів або переключенням на різні тренажери, як це запропоновано у прийнятій відповіді.
Даррен

Просто спробуйте очистити код і запустити.
Міхір Оза

1
У мене була бета версія Xcode 9, яку я закрив. Я забув закрити бета-версію симулятора. Коли я відкрив Xcode 8, я отримав цю помилку при спробі створення та запуску програми. Закриття бета-версії симулятора, очищення кешу та відновлення проблеми вирішили цю проблему.
Адріан

Це сталося, коли я видалив деякі файли із папки ~ / Library
Shamps

Відповіді:


151

Нещодавно у мене трапилось щось подібне, використовуючи Xcode 4.6 та iOS 6.1.

Все, що я робив, це переключитись на іншу версію пристрою (5.1) на тренажері, і він запустився. Переключився назад на 6.1 і він зафіксував себе.

Xcode може бути корисним часом.


Я вже спробував це, але спробував це ще кілька разів, і це врешті вирішило питання.
Даррен

4.6.1 щойно вийшов сьогодні. Можливо, це оновлення вирішить цю проблему.
Джей Q.

інколи? Це моя продуктивність сьогодні: я працюю 6 годин прямо. 15 хвилин на створення коду, 5: 45h боротьби з xcode, і я ще не де вирішую цю проблему. Людина, яку я ненавиджу Xcode. Це гірше програмне забезпечення, з яким я коли-небудь працював.
Качка

3
Xcode часом реагує смішно. У мене було те саме питання ... кілька разів спробували, і врешті-решт це вирішиться самостійно.
Діпіка

4
Щойно отримав це з оновленням до Xcode 9.3. Я розробляю xamarin, тому не використовую Xcode поза компілятором. Що для мене це вирішило - це фактично завантажувати xcode та отримувати запит на "встановлення необхідних компонентів". Після того, як це було завершено, я міг відновити свій проект і більше не бачив цієї помилки.
melwil

24

Це трапляється з нами, і ми очищаємо кеш, видаляємо отриману папку даних .. тощо. Нічого не відбувається.

нижче кроки, які зробили це,

  1. відкрити xib (nib) як вихідний код (клацніть правою кнопкою миші на xib Open As > Source Codeз Xcodeабо відкрийте її за допомогою TextEdit)
  2. видаліть це appearanceType="aqua"
  3. зберегти та відкрити за допомогою Xcode

Щоб дізнатися більше, скористайтеся цією статтею , це допоможе нам виправити проблему.


у моєму коді не виникає поля fieldType = "aqua". Як мені це вирішити
Пунам

@abc просто шукайте "typeType" і видаліть цей рядок
damithH


22

Спробуйте знайти всі файли XIB у проекті та відкрийте їх. Один з них, швидше за все, зламає ваш Xcode.

Моєю проблемою були спеціальні шрифти в якомусь XIB-файлі.

Мені довелося встановити на комп’ютері відсутні шрифти, і проблема була вирішена.


Для мене проблеми були із раскадровкой.
Алекс Ендрюс

Для мене проблема була з отриманими даними
Абдул Ясін

18
  1. Перезапустити Xcode - не працює
  2. Очищення програми - не працювало
  3. Видалення отриманих даних - не вийшло
  4. Скидання вмісту та параметрів тренажера - не працювало
  5. зміна версій тренажера - не працювало
  6. Перезавантажте ОС - магічно працює

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


18

У моєму випадку я працював над Visual Studio. Все було добре. Раптом у мене виникло одне й те саме. Потім я відкрив XCode, побачив доступні оновлення. Потім я оновив оновлення Xcode. Тоді це спрацювало :)

Тому причина полягала в тому, що XCode очікував завершення деяких оновлень. До цього він не працював належним чином.

введіть тут опис зображення

введіть тут опис зображення


Саме це допомогло виправити. Дякую!
Raajit Sharma

12

Що ви повинні зробити, якщо ви застрягли, це в оболонці: ibtool - попередження - помилки - повідомлення yourfile.xib> alerts.plist

яка вийде з ладу, але тепер у вас є збій, в моєму випадку це проблема із імітованими показниками:

localhost: Класуйте мені $ ibtool - попередження - помилки - повідомлення CodeViewController.xib> alarts.plist 2014-04-25 17: 40: 48.625 ibtoold [11691: 507] [MT] DVTAssertions: ASSERTION FAILURE in / SourceCache / IDEInterfaceBuilderCocoaTou /IDEInterfaceBuilderCocoaTouch-5038/InterfaceBuilder/WidgetIntegration/SimulatedMetrics/IBUISimulatedSizeMetrics.m:33 Деталі: (початковийTargetRuntime) не повинен бути нульовим. Об'єкт: Метод: -initWithTargetRuntime: Thread: {name = (null), num = 1} Підказки: None

Тож у моєму випадку я відкрив xib як джерело через контекстне меню та видалив об’єкти метрики. Від помилки залежить, що видалити або змінити. Спробуйте ще раз ibtool, і якщо він не впаде, ви добре.

Передумови: Причина цієї помилки є загальною, вона завжди може відбуватися з різними специфікаціями, що змінюються від версії iOS xcode до версії, в основному, якщо ви періодично не перевіряли свої проекти за допомогою оновлень xcode.


1
Ця помилка трапляється через будь-яку нову не підтримується функцію в ІБ. Отже, це ідеальна відповідь. Чудова відповідь. +1
Vignesh

4

Це не має значення для тих, хто раніше відчував проблему ... Але в рамках WatchKit Framework у мене з’явилася ця помилка. Все, що я зробив, - це видалити скан, який я зв'язав між двома контролерами WKInterface, і збірка вдалася.


Я починаю, щоб ця проблема більше стосувалася шва або чогось іншого. Я працював на старому відділенні, і мій начальник змінив багато речей на раскадровці. Конфлікт версій версії я отримую лише тоді, коли я зливаюся, але після об'єднання. незалежно від того, яку сторону я обрав при вирішенні конфлікту. Дістається до тієї ж помилки. :(
Алікс

4

Я виходжу з цієї помилки, і після сканування журналу аварійних ситуацій я помітив, що моя збірка Xcode-7 намагалася використовувати інструменти збірки з Xcode-8 Beta. Раніше я використовував xcode-select для зміни версії інструментів збирання, які хотів використати. Якщо у вас встановлена ​​версія xcode-beta, перевірте свої налаштування за допомогою наведених нижче команд:

Покажіть, який шлях інструменту побудови встановлений:

xcode-select -p

Виберіть стандартний шлях Xcode:

sudo xcode-select -s /Applications/Xcode.app/

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


3

Отримав це зараз із XCode 8.3.

Для мене я просто вийшов з XCode, потім очистив додаток і відновив. Це було добре після цього.

Причиною для мене було додавання нових рядкових файлів для локалізованої розкадровки.


2

Я просто пережив те саме, і жодна з інших відповідей тут не могла вирішити проблему для мене. Виявилося, що це дублікат UILabel у дошці розкадрування через злиття git. Мабуть, Xcode вийде з ладу, якщо два елементи інтерфейсу мають однаковий внутрішній ідентифікатор.

Мій метод пошуку відповідальної проблеми:

  • Ітеративно крокуйте назад через історію git, перевіряючи кожну фіксацію, поки не знайдете першу рекламну дошку, яка не збиває Xcode.
  • Після того, як у вас з'явиться збіг, який почався з ладу, перегляньте HEAD і ітеративно відновіть зміни в дошці розкадрування проблемної комісії. Продовжуйте звужувати її, доки не з’явиться один елемент інтерфейсу або один рядок, який спричинить збій.
  • Постійно поверніть відповідальну зміну та перезапустіть Xcode. Відкрийте знову розкадровку, і вас можуть попередити про внутрішню невідповідність. Погодьтеся із запропонованими змінами, які вносить Xcode, але перегляньте їх.
  • Якщо необхідно, зараз ви можете спробувати відновити елемент інтерфейсу або зміни з нуля, які раніше викликали проблему.

2

Я працював у вторинному відділенні git, коли зіткнувся з проблемою "255".

Я просто перейшов на свою головну гіт-гілку, очистив проект і запустив. Немає проблем, як я очікував.

Потім я повернувся до гілки «проблемних» git і відновив її з успіхом.

Гремліни.


2

У мене теж трапилось щось подібне, використовуючи Xcode 8.2.1 та iOS 10.2.

Я перейшов на більш ранню версію пристрою на тренажері, і вона спрацювала. Потім я переключився назад, і це було виправлено.


2

Я розумію, що якщо ви використовуєте Xcode занадто довго, не закриваючи його, Xcode стане в кінцевому підсумку не корисним і дасть вам випадкову помилку таємниці. тому я регулярно перезавантажую Xcode та всі програми, які я запускаю на своєму комп'ютері щоразу, коли з’являється підозріла помилка.

Кеш Xcode
1. спробуйте перевірити всі свої контролери класу segue / outlet / storyboard. колись розгортка буде від'єднана від встановленого класу контролера перегляду. (це може призвести до помилки часу запуску).

2-й спробуйте очистити проект та goto (~ / Бібліотека / Розробник / Xcode / DerivedData) та видаліть кеш проекту. потім примусово закрити Xcode, а потім перезапустити його.

3-й спробуй перевірити всі свої контролери класу segue / outlet / storyboard. колись розгортка буде від'єднана від встановленого класу контролера перегляду. (це може призвести до помилки часу запуску).

Четверта спроба перевірити (скопіювати ресурс пакета, джерело компіляції - Проект> Фаза збірки) переконайтесь, що вказаний файл існує з правильною адресою та папкою. колись створення групи призведе до створення папки, а компілятор не може знайти файл

По-п'яте, це також може бути причиною переміщеного файлу + Xcode стає в кінцевому підсумку не корисним і дає вам випадкову помилку таємниці. та оновлення dint (скопіювати ресурс пакету, джерело компіляції - Project> Фаза збірки) після того, як файл має каталог змін

Особиста помилка. випадкове видалення
цього також могло бути причиною виклику видаленого ViewController або розетки


У розділі Файл проекту> Налаштування збірки> Ціль розгортання iOS він показує лише цифри, без "останньої версії". Налаштування на iOS 11, потім на iOS 9, а потім на iOS 11 не впливало. Версія 9.0 (9A235)
Вільям Чернюк

@WilliamCerniuk з дати опублікування цієї відповіді, я розумію, що якщо ви використовуєте Xcode занадто довго, не закриваючи його, Xcode стане в кінцевому підсумку не корисним і дасть вам випадкову помилку таємниці. тому я регулярно перезавантажую Xcode та всі програми, які я запускаю на своєму комп'ютері щоразу, коли з’являється підозріла помилка.
Мухаммед Асіраф

@WilliamCerniuk спробуйте очистити проект та goto (~ / Бібліотека / Розробник / Xcode / DerivedData) та видаліть кеш проекту. потім примусово закрити Xcode, а потім перезапустити його.
Мухаммед Асіраф

@WilliamCerniuk спробуйте перевірити свій клас контролера segue / outlet / storyboard. колись розгортка буде від'єднана від встановленого класу контролера перегляду. (це може призвести до помилки часу запуску).
Мухаммед Асіраф

@WilliamCerniuk спробуйте перевірити (скопіювати ресурс пакету, джерело компіляції - Project> Фаза збірки), переконайтесь, що вказаний файл існує з правильною адресою та папкою. колись створення групи призведе до створення папки, і компілятор
знайде

2

У мене виникла та сама проблема, використовуючи Visual Studio для Mac (Community, 7.4.2 (збірка 12)) після оновлення ОС (macOS High Sierra 10.13.4).

У цьому випадку здається, що вам просто потрібно оновити Visual Studio і Xcode.

Зверніть увагу, що, звичайно, Visual Studio не приносить оновлення Xcode, тому "фокусом" було відкрити останнє та дозволити йому запускати оновлення.


Це також була моя проблема - запуск xcode запропонував мені перевстановити необхідні компоненти та виправити його.
matt.chatterley

Оновлення до iOS 12.0, сталося так само і зі мною. Просто потрібно було запустити XCode вперше, щоб він встановив кілька додаткових компонентів і закінчив!
Доктор TJ

1

Я також зіткнувся з тією ж проблемою в Xcode 8. Видалення отриманих даних виправило мою проблему.

  1. Перейдіть до папки ~ / Бібліотека / розробник / Xcode / DerivedData / та очистіть папки в межах цього
  2. Перезавантажте Xcode та Simulator та запустіть свій проект ....!

Не вдалося видалити отримані дані для проекту, а також не видалити ~ / Library / Caches / com.apple.dt.Xcode (часто пошкоджений кеш)
Вільям Чернюк,

0

Щойно це сталося після того, як я зробив деяку роботу в раскадровці. Я зробив кілька скасувань, і виявилося, що простий UIButton додався до подання. Видалено це і побудовано без помилок. Просто додали нову кнопку і вона спрацювала.

Ще трохи пояснення ... Кнопка була скопійована з одного прототипу TVCell в інший. певна плутанина сталася в копії, я думаю. Просто радий, що я не змінився багато, перш ніж намагатися будувати.


0

У моєму випадку це сталося після перейменування деяких просторів імен, і я вирішив ту саму проблему, перейшовши до властивостей проектів> вкладка APPLICATION> Простір імен за замовчуванням: надання нового правильного простору імен.

Звичайно, я змінив простір імен і всередині класів, але це допоможе, оскільки виправить усі автоматично створені файли. Рекомендується очистити та наростити, а згодом закрити та знову відкрити рішення.


0

Я зіткнувся з тією ж проблемою, коли я зливаю форму коду git з іншим кодом розробника. я багато разів намагався очистити свій проект. Але мені нічого не допоможе.

Я відкриваю розкадровку у вихідному коді. Почніть порівнювати з останніми робочими розкладками сховищ. Тоді я виявив, що однаковий ярлик з’являється два рази на одному екрані. тоді я видаляю один із них і зберігаю. Це мені допомагає.

ви можете перевірити свій xib або раскадровку.


0

У мене виникла помилка, тому що я переписав <view>на <imageView>час редагування аркуша розкадрування як вихідного коду.

Я думав, що це швидке і брудне рішення допоможе замінити деякі власні класи (підклас UIView) на UIImageViews.


Всі похвали GIT.


0

Ось що викликало проблему для мене: я намагався використовувати симулятор iOS 8.0 з Xcode 5.0.2. Я вставив тренажер iOS 8.0 у наступний шлях - / Applications / Xcode \ 2.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDK . Результатом цього стало те, що я зміг побачити симулятор iOS 8.1 випадаючий список у Xcode 5.0.2, але це призвело до помилки компіляції libtool. Я видалив тренажер із шляху, і він працював після того, як я перезапустив Xcode. Тепер для використання симулятора iOS 8.0 я використовую Xcode 6.1


0

Я виправив помилку за допомогою цієї команди, закрив тренажер та Xcode:

codesign -vv /A*/Xc* | open -ef

Сподіваюся, що це допомагає.


Як пов’язане кодування з цим. коли я просто намагаюся побудувати на sim
Alix

0

Я отримував цю помилку під час побудови для 10.9 an .XIB, створеного в XCode 6.4 (10.10).

Дивіться цю відповідь . XIB закликав "labelColor", який був представлений в 10.10, і невідомо до 10.9.

Відкриття XIB як джерела не дало збій XCode, і дозволило мені змінити екземпляри 'labelColor' на 'textColor', і помилка була усунена.


0

Як згадує Логан Гефф вище, це, мабуть, викликано появою сегментів контролера інтерфейсу (тобто циклів). Видалення "поганих" сіг не справді вирішує проблему навігації. Що потрібно - це стратегічно розмістити деякі дії кнопки [поп-контролерам].

Ось код, який працював для мене:

 - (IBAction)backToStart {

   [self popToRootController];
 }

 - (IBAction)backToPrevious {

   [self popController];
 }

0

Мало хто згадав, що проблема була пов’язана із сегами, моє теж було, хоча воно не з’явилось одразу після того, як я додав новий segue, і я зміг запустити додаток кілька разів, внести деякі зміни, додати нові погляди, перш ніж це сталося, тому не ігноруйте це. Я пішов видалити деякі контролери та скасувати, якщо це не допомогло. Якщо проблемою, яку ви можете створити, є проблема Segue, але ви не зможете додати її, тому заново створіть весь контролер перегляду, якщо це є можливим варіантом. Копіювання та вставлення начебто не спрацювало, хоча я не намагався видалити з'єднання IBOutlet.


0

Це почало траплятися зі мною, коли я встановив і почав використовувати бета-версії XCode 9. Коли я почав видозмінювати хороші проекти в 8.3, дошка розбилася з цією помилкою, і XCode вийшов з ладу. У мене на комп’ютері було встановлено XCode 7.x, 8.3 та 9. Я видалив усі (та видалив усі пов'язані файли), а потім перевстановив 8.3 із App Store. Мої розкадрівки проекту все ще були пошкоджені, але я зміг відновитись із резервного копіювання, і тепер у мене все добре.
Не впевнений, це пов’язано з 9 бета-версіями чи ні.


0

У моєму випадку у мене виникло це питання після того, як я вручну вирішив конфлікт злиття у файлі "project.pbxproj". У XCode виберіть проект-> target-> BuildPhases-> CopyBundleResources. Там я видалив кілька копій файлів, які відображалися в порожніх значках (на відміну від значків файлів XIB). ПІСЛЯ цього будівництво пройшло добре без проблем.


0

Я сьогодні отримав цю помилку під час нового проекту, протестуючи ARKit iOS за допомогою шаблону проекту «Додана реальність».

Перемістивши кілька файлів .scn з кореневого проекту в папку art.scnassets, я почав отримувати помилку з кодовим знаком, і нічого, що я зробив, не зміг усунути.

Я спробував усі пропозиції в цій темі (чисті, очищені отримані дані, перезавантажте Xcode, перезавантажте Mac, подивіться у файли розкадрівки для дублікатів ідентифікаторів) ... але те, що змусило мене працювати:

  • виконувати і підштовхувати мої зміни до свого git проекту
  • жорстке відновлення до попереднього комітету
  • очистити отримані дані та запустити успішно
  • жорсткий скидання назад до останнього комітету

... і тепер це спрацювало ... тож я здогадуюсь, що це була помилка в роботі з git XCode ???


0

У XCODE 9 однією з причин цього є помилка в XCODE 9.1 зі старими .XIB-файлами.

Виправити:

  1. Оновлення до XCODE 9.2

  2. Усі ваші .XIB-файли повинні бути встановлені на версію iOS 8.1 або вище.


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