Неправильный или поврежденный файл AST
У меня есть проблема, я не знаю, почему это произошло в первую очередь, но, скорее всего, потому, что я по ошибке перешел к мусору в некоторые системные рамки.
Я получил сообщение об ошибке:
искаженный или поврежденный файл AST: 'не удалось найти файл'/Users/username/myProject/QuartzCore.framework/Headers/CAMediaTiming.h ', на который ссылается файл AST'
Я попытался скопировать файл QuartzCore.framework в этот каталог. Это дает мне тогда новые ошибки. Тогда, если я удалю фреймворк из Dir. Все будет хорошо для проекта, пока я не изменю код. Тогда мне придется повторить предыдущий сценарий. Сейчас это очень раздражает, и мне действительно нужно это исправить. Кто-нибудь?
Ответы
Ответ 1
Как просили:
Что вызвало эту ошибку для меня (после получения нового XCode) было то, что я пытался запустить проект в симуляторе (случайно в симуляторе, я никогда не использую симулятор), но я забыл выбрать свое устройство, или мое устройство было бы отключено без я заметил, и он будет пытаться запустить в симуляторе... так что я получаю эти классические ошибки ".o" файла... Затем я переключаюсь обратно на свое устройство и получаю поврежденные файлы AST...
Чтобы вылечить проблему... (следуйте инструкциям ниже ОЧЕНЬ внимательно !!!!!)
- Очистите свой проект
- ВЫЙТИ Xcode (CMD + Q)
- Запустите эту команду терминала:
rm -rf ~/Library/Developer/Xcode/DerivedData/ModuleCache/*
- Запустите эту команду терминала:
rm -rf ~/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/*
- Открыть Xcode
- УБЕДИТЕСЬ, ЧТО ВЫ ВЫБИРАЕТЕ УСТРОЙСТВО И НЕ МОДЕЛИРУЕТЕ
- ЧИСТЫЙ проект (да, еще раз)
- ТОГДА строить (на свое устройство, а не на симулятор)...
Наслаждайтесь!
Примечание. После дальнейших экспериментов я обнаружил, что принудительное завершение работы xCode возможно не является необходимым.
Ответ 2
В дополнение ко всем другим ответам "очистить свою сборку" для меня ничего не работало, пока я не опустошил каталог (очень недокументированный!) /var/folders
.
По-видимому, это "разный кеш", поддерживаемый OS-X. Я даже не удосужился выяснить, что такое "правильные файлы"; Я просто очистил весь каталог.
... И теперь я могу снова построить. Ура! От терминала:
[sudo] rm -rf /var/folders/*
(Хотя я сделал это от Finder через проверку подлинности.) (OS-X 10.9.latest)
Дополнительная подсказка: я мог бы построить с XCode-6-бета, но получил тупой "поврежденный файл AST" в XCode-5.
Ответ 3
В моей ситуации все, что мне нужно было сделать, это нажать "Продукт" > "Очистить", а затем снова создать проект. Это удалось. Надеюсь, что это поможет некоторым другим, столкнувшимся с той же ситуацией.
Ответ 4
Привет всем Я получил ту же ошибку, потому что я открыл сразу два проекта и перетащил рамки из одного проекта в другой.
Через некоторое время я понял, что это не правильный путь. Я переместил все фреймворки, которые перетаскиваются из другого проекта в корзину. Затем очистите и запустите в симуляторе все работает нормально.
Удалить фреймы- > снова добавить фреймворки- > очистить и запустить
Я надеюсь, что это поможет кому-то
Ответ 5
Personnaly, для меня работало только одно решение:
В Xcode Перейти к окну → Организатор
Нажмите кнопку "удалить" рядом с каталогом "производные данные".
Затем снова запустите проект...
Ответ 6
Я просто очищаю свой проект и перестраиваю. Все в порядке.
Ответ 7
В моем случае ошибка происходила из-за того, что у меня был поврежденный файл .m - это был тот, который каким-то образом (не совсем уверен, как) нашел свой путь в моем проекте (у меня было открытое Eclipse одновременно поврежденный файл имел в нем некоторый код Java). Чтобы устранить проблему, я очистил проект, закрыл Xcode, удалил ошибочный файл .m и снова открыл Xcode. Затем он дал мне clang-ошибку из-за отсутствующего файла .m. Я создал новый, пустой .m файл с тем же именем, и проект прошел нормально. Немного взлома, но это сработало: -)