Как начать отладку? - PullRequest
       24

Как начать отладку?

5 голосов
/ 09 августа 2009

Я изучил C и хотел бы начать совершенствовать программное обеспечение с открытым исходным кодом. Я хотел бы устранить одну раздражающую ошибку в GTK +. Чтобы увидеть ошибку, мне нужно использовать Gedit.

Как я могу скачать исходники GTK + и gedit и скомпилировать их оба, чтобы я мог увидеть, где ошибка? И я никогда не использовал отладчик в Linux, так есть ли где-нибудь учебник для этого?

Ответы [ 5 ]

8 голосов
/ 09 августа 2009

Вы можете получить информацию о скачивании и компиляции gedit здесь: http://projects.gnome.org/gedit/developers.html

Мой отладчик - GDB: http://www.gnu.org/software/gdb/

GDB - консольное приложение, с которым может быть трудно справиться новичку. Попробуйте IDE, такую ​​как Eclipse, которая предоставляет графический интерфейс для GDB.

5 голосов
/ 09 августа 2009

Почти все отладчики Linux являются интерфейсом или адаптерами отладчика gdb. Поэтому вы должны научиться использовать это в первую очередь, желательно начиная с небольшие программы собственной разработки, а не гигантские кодовые базы FOSS. Руководство GDB, доступно из здесь на самом деле довольно хороший учебник.

3 голосов
/ 09 августа 2009

Информация о сборке и установке GTK + должна быть здесь: http://www.gtk.org/development.html

Источники должны быть здесь: http://www.gtk.org/download-linux.html

Вы можете проверить GDB: http://www.gnu.org/software/gdb/ Это довольно стандартный отладчик Linux. Сначала я бы потратил время на что-то простое или получил бы IDE, которая его использует Хотя изучение GDB может стоить времени.

2 голосов
/ 09 августа 2009

gdb - это динозавр, который давно должен был вымереть. Отладка - это та область, где (задыхаясь!) Windows превосходит Unix. После этого я советую вам начать с графического интерфейса Data Debugger (DDD) до gdb. Да, графический интерфейс странный, но вы будете далеко более продуктивным, быстрее, чем если бы вы начали с gdb.

Также не забывайте valgrind для поиска и диагностики ошибок памяти. Проект KDE на самом деле требует использования valgrind; Я не уверен насчет Гнома.

0 голосов
/ 10 августа 2009

Возможно, вы не увидите ошибку, если загрузите последние исходники gedit и gtk +. Это может быть исправлено в последних источниках или последние источники могут отличаться, чтобы не вызвать вашу ошибку.

Какой дистрибутив Linux вы используете?

Прежде всего, я бы посоветовался обратиться к базе данных ошибок вашего дистрибутива, чтобы узнать, не написал ли кто-нибудь подобную ошибку. Если вы ничего не найдете, я бы предложил использовать инструменты вашего дистрибутива, чтобы получить исходный код, соответствующий бинарному файлу, который вы установили в вашей системе (например, apt-get source libgtk-2.0 в Debian или Ubuntu).

Кроме того, ваш дистрибутив может также сделать доступным пакет отладки (например, libgtk2.0-0-dbg в Debian), который позволит вам запустить отладчик в двоичном файле, который у вас уже есть, без указания исходного кода. Хотя это и не заменит наличие исходников, это может быть полезно для запуска valgrind или осмысления основного файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...