How do I create a bug report/ru
│ Afrikaans (af) │
Deutsch (de) │
English (en) │
français (fr) │
português (pt) │
русский (ru) │
Если Вы обнаружили ошибку в Лазарусе и хотите сообщить о ней разработчикам, эта статья расскажет как это сделать.
Проблемы с компиляцией Лазаруса
Если у Вас возникли проблемы с компиляцией SVN версии Лазаруса, то Вам следует написать об этом либо в почтовую рассылку либо спросить о проблеме на IRC канале #lazarus-ide, сервера irc.freenode.net. Скорее всего, кто-то ещё уже столкнулся с этой же проблемой и вскоре она будет решена.
Сообщение об ошибке
Перед тем как сообщить о новой ошибке, следует убедится в том, что о ней не сообщалось ранее. Создание дублирующих сообщений не поможет в устранении ошибок, а, наоброт, отнимет у разработчиков время.
Для поиска сообщений об ошибке:
- Используйте страницу поиска.
- Укажите слова, необходимые для поиска, в поле Search и нажмите Apply Filter
(Совет): Поиск очень простой, если у вас возникли проблемы с использованием метода TEdit.SelStart, попробуйте искать слова "SelStart". Например: если кто-то сообщил об ошибке с текстом "I've a problem using TEdit and SelStart method". Поиск по слову "TEdit.SetStart" не найдёт это сообщение, зато поиск "SelStart" даст необходимый результат.
Если об ошибке уже сообщили:
- Добавьте сообщение, если ошибку можно воспроизвести другим способом, от уже указанных
- Если ошибка помечена как исправленная (Resolved) или сообщение уже закрыто (Closed), то вы можете октрыть её повтороно, нажав на кнопку "Reopen Issue". (Некоторые ошибки исправленны только в SVN версии. Не открывайте сообщение об ошибке повторно, если вы не используете SVN версию Лазаруса. Все исправления в SVN версии будут включены в следующий релиз)
- Вы можете отслеживать ошибку нажав "Monitor Issue". При этом Вас будут уведомлять о всех измнениях с этой ошибкой.
Внимание: чтобы выполнять указанные операции Вам нужно зарегестрироваться в системе и войти под своим аккаунтом: см#Вход в систему/Создание аккаунта.
Создание сообщения об ошибке
- Откройте страницу Lazarus баг-трекера
- Вы должны войти в трекер под своим аккаунтом.
- Октройте страницу Report Issue. Заполните как можно больше информации об ошибке. Чем более точные данные, тем лучше. Обязательно укажите, что происходит "не так" и "как должно работать". После заполнения полей нажмите кнопку Submit Report
Важные информация об ошибке:
- КАК ВОСПРОИЗВЕСТИ ОШИБКУ Если разработчикам не удасться её воспроизвети, то исправление займёт гораздо больше времени.
- Widgetset и Операционная система
- Версия Лазаруса (официальный релиз (его номер) или SVN версия (номер ревизии)
- Если ошибка приводит к падению программы или Лазаруса, то приложите стек вызовов. Обычно он пишется в консоль программы. Подробнее вы можете узнать здесь.
- Если есть возможность то обязательно добавьте к сообщению об ошибке небольшой тестовый проект, который воспроизводит ошибку.
- Если ошибка связана с графикой (графическим интерфейсом программы), то сделайте скришоты
- Если есть возможность проверить ошибку на разных системах, то обязательно протестируйте. Это поможет понять, является ли ошибка системозависимой или нет. А значит ускорит её исправление.
- Ускорить устранение ошибки, поможет предложенный Вами, за её решение, бонус. Устранять ошибки могут не только разработчики Лазаруса, но и любой программист владеющий FPC/Lazarus-ом.
Перевод сообщений на английский язык
Ошибки следует описывать на английском языке. Если английским Вы владеете недостаточно хорошо, то Вы можете использовать on-line переводчики (например: http://translate.google.com/).
При описании ошибки, следует указать, что Вы пользовались переводчиком: "Sorry for my English, I'm using translator"
Вы так же можете попросить помощи в переводе (и не только) на этом форуме: http://freepascal.ru
Вход в систему/Создание аккаунта
Вам нужно быть зарегестрированным пользователем, чтобы править или добавлять новые сообщения об ошибках. Вы так же можете войти в систему, как анонимный пользователь, но вы сможете только просматривать сообщения. Если у вас уже есть аккаунт, то для входа в систему вам нужно зайти на эту страницу. Если у вас нет аккаунта, то вам следует зарегестрироваться здесь.
Ошибки отладчика
Частая ситуация, при которой программа может не запускаться, из-за отладчика, выдовая подобное сообщение:
- Для того, чтобы выяснить в чём проблема, ОБЯЗАТЕЛЬНО вместе с сообщением об ошибке, добавляйте
файл содержаший вывод отладчика:
Вид (View) -> Окна отладки (Debugging Window) -> Вывод отладчика (Debugger Output).
Скопируйте всё содержимое окна, и сохраните в файл.
- Укажите операционную систему и версию Лазаруса.
- Если есть возможность, проверьте с другими версиями отладчика, либо более поздними версиями Лазаруса (SVN версией) - возможно, что эта ошибка уже была устранена.
Общее решение проблемы с gdb отладчиком
Просто отключить его!
Окружение (Environment) -> Параметры ... (Options) -> Отладчик (Debugger) -> Тип отладчика и путь (Debugger type and path) -> none
Но отлаживаться прийдётся, используя журналирование (writeln), а так же использовать свои знания кода и работы алгоритма программы.
error 193
Если, при просмотре вывода отладчика, вам встретится подобная строка:
&"Error creating process C:/Documents and Settings/UserName/Projects/project1.exe, (error 193)\n"
Подобная проблема может возникнуть, если проект сохранён в папке, в пути которой символы с не ANSI кодировкой (например русские буквы). Решение - сохранить проект в другую папку (без пробелов, полный путь которой содержит только английские буквы).
Это не ограничение Лазаруса или FPC, это ограничение отладчика.