#1
|
|||
|
|||
gdb не видит статическую библиотеку
Michael Dukelsky написал(а) к All в Feb 18 19:43:52 по местному времени:
Привет, All! Не знаю, читает ли кто-нибудь эту эху, но всё равно спрошу. :) Никогда раньше не занимался отладкой программ в линуксе, только в винде, поэтому вопрос чайника. Пытаюсь отладчиком ddd, запущенным для отладки hpt, зайти в функции из libsmapi.a, прилинкованной к hpt. Однако, step выполняется как next и, что делается в функции, я не вижу. Как hpt, так и smapi было собрано с -g -g3 и содержат отладочную информацию. Однако, почему-то отладочная информация из libsmapi в hpt не попала. Поэтому, когда я пытаюсь поставить контрольную точку в одном из исходных файлов smapi, отладчик сообщает, что такого файла нет. Пробовал записать исходники в /usr/src/debug/smapi/src и (gdb) dir /usr/src/debug/smapi/src (gdb) b /usr/src/debug/smapi/src/api_sdm.c No source file /usr/src/debug/smapi/src/api_sdm.с Как отладчиком зайти в функцию из этой libsmapi? Желаю успехов, All! За сим откланиваюсь, Michael. ... node (at) f1042 (dot) ru --- GoldED+/LNX 1.1.5-b20170303 |
#2
|
|||
|
|||
Re: gdb не видит статическую библиотеку
Eugene Grosbein написал(а) к Michael Dukelsky в Feb 18 02:09:18 по местному времени:
19 февр. 2018, понедельник, в 19:43 NOVT, Michael Dukelsky написал(а): MD> Не знаю, читает ли кто-нибудь эту эху, но всё равно спрошу. :) Никогда раньше MD> не занимался отладкой программ в линуксе, только в винде, поэтому вопрос MD> чайника. MD> Пытаюсь отладчиком ddd, запущенным для отладки hpt, зайти в функции из MD> libsmapi.a, прилинкованной к hpt. Именно libsmapi.a, не libsmapi.so ? Статическая линковка вместо динамической? MD> Однако, step выполняется как next и, что MD> делается в функции, я не вижу. Как hpt, так и smapi было собрано с -g -g3 и Собрано при помощи gcc? Что за флаг такой -g3? Для отладки надо собирать с -g -O0. MD> содержат отладочную информацию. А команда file это подтверждает? Попробуй пересобрать с динамической линковкой. Eugene -- Научить не кланяться авторитетам, а исследовать их и сравнивать их поучения с жизнью. Научить настороженно относиться к опыту бывалых людей, потому что жизнь меняется необычайно быстро. --- slrn/1.0.2 (FreeBSD) |
#3
|
|||
|
|||
gdb не видит статическую библиотеку
Michael Dukelsky написал(а) к Eugene Grosbein в Feb 18 22:32:30 по местному времени:
Привет, Eugene! 20 Feb 18 02:09, Eugene Grosbein послал(а) письмо к Michael Dukelsky: MD>> вопрос чайника. Пытаюсь отладчиком ddd, запущенным MD>> для отладки hpt, зайти в функции из libsmapi.a, прилинкованной к MD>> hpt. Спасибо за быстрый ответ. EG> Именно libsmapi.a, не libsmapi.so ? EG> Статическая линковка вместо динамической? Да. MD>> Однако, step выполняется как next и, что MD>> делается в функции, я не вижу. Как hpt, так и smapi было собрано MD>> с -g -g3 и EG> Собрано при помощи gcc? Да. EG> Что за флаг такой -g3? Это максимальная отладочная информация. EG> Для отладки надо собирать с -g -O0. -О0 действует по умолчанию. MD>> содержат отладочную информацию. EG> А команда file это подтверждает? Опа... Нет - stripped. Но я устанавливал пакет hpt-debuginfo. И существует /usr/lib/debug/usr/bin/hpt.debug Наверно, проблема в том, что smapi-debuginfo никакой отладочной информации не содержит. :-( EG> Попробуй пересобрать с динамической линковкой. Нет, мне хотелось бы оставить статическую библиотеку. Желаю успехов, Eugene! За сим откланиваюсь, Michael. ... node (at) f1042 (dot) ru --- GoldED+/LNX 1.1.5-b20170303 |
#4
|
|||
|
|||
Re: gdb не видит статическую библиотеку
Eugene Grosbein написал(а) к Michael Dukelsky в Feb 18 15:01:30 по местному времени:
19 февр. 2018, понедельник, в 22:32 NOVT, Michael Dukelsky написал(а): EG>> А команда file это подтверждает? MD> Опа... Нет - stripped. Оно может стрипаться на этапе install, проверь. Eugene --- slrn/1.0.2 (FreeBSD) |
#5
|
|||
|
|||
gdb не видит статическую библиотеку
Valentin Nechayev написал(а) к Michael Dukelsky в Feb 18 11:41:08 по местному времени:
Нi, >>>> Michael Dukelsky wrote: MD> Опа... Нет - stripped. Но я устанавливал пакет hpt-debuginfo. И MD> существует /usr/lib/debug/usr/bin/hpt.debug Наверно, проблема в том, MD> что smapi-debuginfo никакой отладочной информации не содержит. :-( Отдельный пакет *-debuginfo означает подход, когда объектный файл делится на основную часть без отладочной информации и отдельный файл отладочной информации. gdb умеет такое подключать, но иногда не справляется с поиском этого в путях. Вот тут общий обзор проблемы с его стороны: https://sourceware.org/gdb/onlinedoc...bug-Files.html А что именно в smapi-debuginfo? Было бы крайне странно, что он не содержит отладочной информации несмотря на своё название. -netch- ... Спамы, куки... --- |
#6
|
|||
|
|||
gdb не видит статическую библиотеку
Michael Dukelsky написал(а) к Valentin Nechayev в Feb 18 19:50:22 по местному времени:
Привет, Valentin! 20 Feb 18 11:41, Valentin Nechayev послал(а) письмо к Michael Dukelsky: MD>> Опа... Нет - stripped. Но я устанавливал пакет hpt-debuginfo. И MD>> существует /usr/lib/debug/usr/bin/hpt.debug Наверно, проблема в MD>> том, что smapi-debuginfo никакой отладочной информации не MD>> содержит. :-( VN> Отдельный пакет *-debuginfo означает подход, когда объектный файл VN> делится на основную часть без отладочной информации и отдельный файл VN> отладочной информации. gdb умеет такое подключать, но иногда не VN> справляется с поиском этого в путях. VN> Вот тут общий обзор проблемы с его стороны: VN> https://sourceware.org/gdb/onlinedoc...bug-Files.html Спасибо! Полезная ссылка, стало понятнее. VN> А что именно в smapi-debuginfo? Было бы крайне странно, что он не VN> содержит отладочной информации несмотря на своё название. -rw-rw-r--. 1 mike mike 1752 фев 19 18:04 smapi-debuginfo-2.5.20160316C-1.x86_64.rpm Уже размер говорит кое о чём. Внутри -r--r--r--. 1 mike mike 124 фев 19 00:00 CONTENTS.cpio а в нём ничего нет. Пусто. Явно ошибка где-то в мейкфайлах. Буду разбираться. Желаю успехов, Valentin! За сим откланиваюсь, Michael. ... node (at) f1042 (dot) ru --- GoldED+/LNX 1.1.5-b20170303 |