Засіб діагностики Dr. MinGW

Примітка

Дані, які наведено на цій сторінці, стосуються лише випуску Krita для Windows. Зазвичай, файл журналу %LOCALAPPDATA%kritacrash.log міститиме достатньо даних для того, щоб розробники зрозуміли причину аварійного завершення роботи Krita. Пакунок із діагностичними даними може знадобитися, лише якщо виникне потреба в уточненні даних.

Користування діагностичним пакунком

Якщо у вашій системі встановлено Krita, і ви хочете отримати дані зворотного трасування, найкращим варіантом є використання портативної версії (найсвіжішого випуску або випуску, який вам рекомендуватимуть розробник, наприклад пакунка Krita Next або Krita Plus). Окрім пакунка самої портативної версії, вам слід також отримати пакунок із діагностичними символами. Посилання на нього можна знайти на тій самій сторінці, з якої ви отримали пакунок Krita. Відрізнити пакунки один від одного можна за закінченням назви архіву ZIP — назва файла пакунка із діагностичними символами закінчується на «-dbg.zip».

  • Посилання на діагностичні пакунки має бути наведено у оголошенні щодо випуску на https://krita.org/, разом із посиланнями на пакунки випуску. Ви можете знайти діагностичні пакунки для усіх випусків або на https://download.kde.org/stable/krita (стабільні випуски) або на https://download.kde.org/unstable/krita (нестабільні випуски, зокрема тестові версії). Архів ZIP портативної версії та діагностичний архів ZIP зберігаються у одному каталозі.

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

  • Розпакуйте портативну Krita.

  • Розпакуйте файли із пакунка діагностичних символів до основного каталогу портативної версії Krita, тобто каталогу, де розташовано підкаталоги bin, lib та share, як показано на наведених нижче знімках:

    ../_images/Mingw-dbg7zip.png ../_images/Mingw-dbg7zip-dir.png
  • Після видобування файлів зазирніть до каталогу bin і переконайтеся, що у ньому є каталог .debug. Якщо такого каталогу немає, ймовірно, видобування відбулося до якогось не того місця.

Отримання даних зворотного трасування

  1. Після аварії Krita може не відповідати на запити протягом певного часу, від декількох секунд до декількох хвилин, перш ніж ви побачите діалогове вікно повідомлення щодо аварійного завершення роботи.

    ../_images/Mingw-crash-screen.png

    Приклад вікна аварійного завершення роботи.

    • Якщо Krita не відповідатиме на ваші дії з десяток хвилин, це може означати, що програму повністю заблоковано, отже ніяких корисних даних зворотного трасування не варто очікувати. У такому випадку вам доведеться завершити роботу Krita вручну. Виконайте наведені далі настанови, щоб перевірити, чи завершила програма роботу у аварійному режимі.

  2. Відкрийте Провідник Windows, введіть %LocalAppData% (без лапок) у смужці адреси і натисніть клавішу Enter.

    ../_images/Mingw-explorer-path.png
  3. Знайдіть файл kritacrash.log (може мати назву kritacrash, залежно від параметрів роботи програми)

  4. Відкрийте файл у Notepad і гортайте його вміст до кінця, потім підніміться трохи вгору до першого запису «Error occurred on <час>» або рядка з дефісів.

    ../_images/Mingw-crash-log-start.png

    Початок зворотного трасування.

    Перевірте часову позначку, щоб переконатися, що вона збігається із моментом аварійного завершення роботи.

    ../_images/Mingw-crash-log-end.png

    Кінець зворотного трасування.

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

    • Якщо файла kritacrash.log не існує або не існує запису зворотного трасування із відповідною міткою, тоді у вас немає даних зворотного трасування. Це означає, що роботу Krita було з високим рівнем ймовірності заблоковано, а аварійного завершення роботи не відбулося. У цьому випадку теж слід створити звіт щодо вади.

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