Компиляция и отладка. [решено]

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Atilla
незнакомец
Сообщения: 3
Зарегистрирован: 03.07.2009 20:38:49

Компиляция и отладка. [решено]

Сообщение Atilla »

Если компилировать файл через консоль:

Код: Выделить всё

user@user-laptop:~# fpc exmple.pas

А потом скормить бинарик дебуггеру, то дебуггер ругается, что там нет информации для отладки.
А если тот же самый сырец открыть через лазарус и там его собрать, то дебуггер доволен.
Как компилить прям через консоль, чтоб потом в дебуггер засунуть без проблем?

UPD.
Не надо fpc.cfg редактировать. Надо просто при компиляции указывать ключ -g:

Код: Выделить всё

user@user-laptop:~$ sudo fpc -g example.pas

И будет тебе счастье %username%.
Последний раз редактировалось Atilla 05.11.2009 18:18:16, всего редактировалось 2 раза.
Аватара пользователя
Максим
энтузиаст
Сообщения: 599
Зарегистрирован: 27.07.2007 01:51:43
Откуда: Москва

Сообщение Максим »

Думаю, что убирание параметра -Xg (использование внешнего файла отладочных символов) из fpc.cfg решит вашу проблему.
Atilla
незнакомец
Сообщения: 3
Зарегистрирован: 03.07.2009 20:38:49

Сообщение Atilla »

А где находится fpc.cfg?

Добавлено спустя 31 минуту 30 секунд:
В /etc/fpc.cfg нет -Xg. Есть только -Xs
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

уберите -Xs - это вырезание символьной информации из бинарника (они нужны для отладчика)
Atilla
незнакомец
Сообщения: 3
Зарегистрирован: 03.07.2009 20:38:49

Сообщение Atilla »

Законментировал в /etc/fpc.cfg строку -Xs.
Теперь при компиляции выдает такое:

Код: Выделить всё

user@user-laptop:~$ fpc long_s.pas
Free Pascal Compiler version 2.2.4-3 [2009/06/04] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Linux for i386
Compiling long_s.pas
Linking long_s
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
30 lines compiled, 0.4 sec

Но дебуггер не кушает. Insight по крайней мере.
Кстати какие есть хорошие дебуггеры для такого дела?
Ответить