Приложение неожиданно завершило работу на Mac - что делать
Ситуация: запускаете программу на Mac, на секунду появляется иконка в Dock, потом сразу исчезает. macOS показывает окно:
"X" неожиданно завершило работу.
Нажмите "Повторить", чтобы снова открыть программу, или "Отправить отчёт в Apple"...
Нажимаете "Повторить" - то же самое. Отчёт Apple отправили - ничего не изменилось. Разбираем почему программы крашатся на старте и как это чинить.
5 основных причин падения программы на старте
В 95% случаев причина одна из этих:
- Сертификат разработчика отозван Apple
- Программа несовместима с текущей версией macOS
- Неверная архитектура (Intel на Apple Silicon или наоборот без Rosetta)
- Повреждённые файлы настроек программы
- Отсутствуют зависимости (библиотеки, фреймворки)
Рассмотрим каждую причину и как её диагностировать.
Причина 1: отозванный сертификат
Это самый частый случай в 2024-2026 годах. Apple активно отзывает сертификаты разработчиков которые:
- Использовали сертификат для распространения вредоносного ПО
- Не заплатили за продление подписки Developer Program
- Закрыли бизнес и аккаунт
- Были временно заблокированы за нарушения
Когда macOS запускает программу с отозванным сертификатом, она сразу её убивает и выдаёт "неожиданно завершило работу" без объяснения причины.
Как проверить:
Откройте Терминал и выполните:
codesign --verify --deep --strict --verbose=4 /Applications/НазваниеПрограммы.app
Если выдаёт что-то вроде "a sealed resource is missing or invalid" или "code object is not signed at all" - проблема с подписью.
Как починить:
Снять подпись полностью (самый надёжный способ):
sudo codesign --remove-signature /Applications/НазваниеПрограммы.app
Или снять атрибут карантина:
sudo xattr -rd com.apple.quarantine /Applications/НазваниеПрограммы.app
Если программа содержит вложенные .app или .framework (как Electron-приложения вроде Slack, VS Code), может потребоваться пройтись по ним всем:
sudo codesign --remove-signature /Applications/НазваниеПрограммы.app
sudo codesign --remove-signature /Applications/НазваниеПрограммы.app/Contents/Frameworks/*
После этого macOS перестанет проверять подпись и программа запустится.
Причина 2: несовместимость с версией macOS
Программы старше нескольких лет могут не запускаться на новых macOS. Apple постоянно убирает устаревшие API, и программы использующие их падают.
Как проверить:
- Откройте сайт разработчика, посмотрите минимальные требования
- Если указано "macOS 10.14 - 13", а у вас macOS 15 - возможно несовместимость
- Посмотрите дату последнего обновления - если 2019-2020 и старше, шансы на несовместимость высокие
Что делать:
Вариантов три:
- Скачать старую версию macOS в виртуальной машине (Parallels, VirtualBox, UTM) и запускать программу там
- Искать альтернативу - почти любой программе есть современная замена. Посмотрите каталог mac-soft.ru
- Написать разработчику - если программа нужна позарез, может быть готов обновить
Причина 3: неверная архитектура
Если у вас Mac с Apple Silicon (M1/M2/M3/M4) и запускаете Intel-программу без Rosetta - получите краш.
Как проверить архитектуру программы:
file /Applications/НазваниеПрограммы.app/Contents/MacOS/*
Выдаст что-то вроде:
Mach-O 64-bit executable x86_64- Intel-версияMach-O 64-bit executable arm64- Apple SiliconMach-O universal binary with 2 architectures- Universal (обе)
Если Intel и вы на Apple Silicon - установите Rosetta:
softwareupdate --install-rosetta --agree-to-license
Если наоборот (arm64 программа на Intel Mac) - ничего не поделать, скачайте Intel-версию программы.
Причина 4: повреждённые файлы настроек
Иногда программа падает из-за битого файла настроек - например, плагин зациклился на сохранении или при обновлении что-то сломалось.
Где лежат настройки:
~/Library/Preferences/com.вендор.название.plist
Например:
- Firefox:
~/Library/Preferences/org.mozilla.firefox.plist - Xcode:
~/Library/Preferences/com.apple.dt.Xcode.plist - AppCleaner:
~/Library/Preferences/net.freemacsoft.AppCleaner.plist
Как починить:
- Закройте программу полностью
- Переименуйте .plist файл (например,
.plist.bak) - Запустите программу заново
- Она создаст свежий .plist с дефолтными настройками
Также настройки могут быть в:
~/Library/Application Support/НазваниеПрограммы/~/Library/Caches/com.вендор.название/
Если программа всё равно падает, удалите (или переименуйте) эти папки тоже.
Причина 5: отсутствующие зависимости
Некоторые программы требуют установленные библиотеки, фреймворки или инструменты. Например:
- Программы на Java требуют Java Runtime
- Программы на Mono/Xamarin требуют Mono Framework
- Программы на Python могут требовать конкретную версию Python
Как узнать что нужно программе:
otool -L /Applications/НазваниеПрограммы.app/Contents/MacOS/*
Эта команда выдаёт список всех библиотек которые программа использует. Если в списке есть путь типа /Library/Frameworks/XXX.framework/... - значит эта фреймворк должна быть установлена.
Универсальный диагностический метод: Console
У macOS есть встроенная утилита Console которая показывает все краши и логи:
- Откройте Applications - Utilities - Console (или Spotlight: "Console")
- В левом меню выберите Crash Reports
- Найдите последний отчёт о вашей программе
- Откройте - увидите технические детали краша
Ключевые вещи в отчёте:
Termination Reason: Namespace CODESIGNING- проблема с подписью (причина 1)Termination Reason: Namespace DYLD, Code 1 Library missing- не хватает библиотеки (причина 5)Exception Type: EXC<em>BAD</em>ACCESS- программа обратилась к недоступной памяти (обычно бага программы или несовместимость)Exception Codes: illegal_instruction- программа использует инструкции недоступные на этом процессоре (причина 3)
Эти детали можно скопировать и отправить разработчику - он точно скажет в чём дело.
Частые вопросы
А если программа работала вчера, а сегодня падает?
Возможно Apple отозвала сертификат ночью. Или вчера macOS обновилась и отключила старое API. Попробуйте снять подпись (Причина 1, команда codesign --remove-signature).
После обновления macOS все программы перестали запускаться?
Массовый краш всех программ - признак поломки системы. Попробуйте загрузиться в Safe Mode (зажмите Shift при включении Intel Mac, или удержите кнопку питания на Apple Silicon). Если в Safe Mode работает - проблема в дополнительных расширениях или плагинах.
Как отправить отчёт разработчику правильно?
Откройте Console, найдите краш, экспортируйте в текстовый файл (правый клик - Export), приложите к письму разработчику. С этим файлом он за 5 минут скажет причину.
Надеюсь один из способов помог. Если программа не запускается даже после всех попыток - возможно пора искать современную альтернативу в каталоге программ.
Комментарии (0)