| 1 | Итак, Вы - счастливый обладатель сообщения '''Segmentatin fault'''. Что дальше? |
| 2 | |
| 3 | Нужно уведомить разработчиков, предоставив максимум полезной информации. |
| 4 | == Что делать == |
| 5 | 1. Перво-наперво нужно собрать mc с отладочной информацией, и чем большее ее будет - тем лучше. |
| 6 | Чтобы добавить в '''mc''' отладочные секции - нужно собрать его с опцией для '''gcc''' '''-ggdb3''' (максимум отладки). |
| 7 | Для этого соберем исходники специальным образом: |
| 8 | {{{ |
| 9 | $ ./configure <обычные-опции> |
| 10 | $ make CFLAGS=-ggdb3 # вот она, магия! |
| 11 | $ make install |
| 12 | }}} |
| 13 | |
| 14 | 2. Явно включим разрешение на создание дампов памяти (так называемых '''core''' файлов) и в этой же сессии запустим '''mc''' |
| 15 | {{{ |
| 16 | $ ulimit -c unlimited |
| 17 | $ mc |
| 18 | }}} |
| 19 | |
| 20 | 3. Добъёмся падения '''mc''' и посмотрим на дамп (файл '''core''', из которого '''mc''' запускался): |
| 21 | {{{ |
| 22 | $ gdb --quiet /usr/bin/mc core |
| 23 | ... |
| 24 | (gdb) bt |
| 25 | <интересующий-вывод-1> |
| 26 | (gdb) bt full |
| 27 | <интересующий-вывод-2> |
| 28 | }}} |
| 29 | 4. Собираем '''интересующий-вывод-1''' и '''интересующий-вывод-2''' и отправляем по координатам |
| 30 | на [wiki:ru/WikiStart главной] (в списки рассылок или в jabber комнату, не забываем сообщить особенности воспроизведения |
| 31 | ошибки и опции '''./configure''' для сборки). |
| 32 | |
| 33 | [http://www.midnight-commander.org/browser/doc/FAQ] <- ищем пункт 10.3 (англ. версия) |