Отладка Shared Library

Тема в разделе "WASM.UNIX", создана пользователем Zlyden, 29 июн 2010.

  1. Zlyden

    Zlyden New Member

    Публикаций:
    0
    Регистрация:
    25 авг 2008
    Сообщения:
    49
    Как можно в линуксе (у меня Ubuntu 10.4 lucid) отладить библиотеку с отладочной информацией, если в использующей её программе отладочной информации нет?
    Дело в том, что после сдачи курсовой решил скомпилировать свой проект (динамическая библиотека) на линукс при помощи g++ и gedit. Поисправлял, вроде бы все хорошо, только выводятся сообщения об ошибке из другой используемой библиотеки (но все работает). Не смог найти причину, скачал IDE Code::Blocks (для упрощения отладки). Все настроил, в том числе хост-программу. Нажимаю "Отладка", и меня радуют сообщением, что программа-хост не имеет отладочной информации. Эта программа не моя, исходники достать нереально, но именно под нее работает моя библиотека. Не знаю, удастся ли мне найти эту ошибку без отладки.
     
  2. Mika0x65

    Mika0x65 New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2005
    Сообщения:
    1.384
    А в чем проблема? Загружаем программу в gdb, выполняем 'b name_of_a_function_in_shared_object' затем 'r' и ждем, когда произойдет вызов ф-ии. gdb при этом скажет, что такой ф-ии нет, но он может поставить точку останова, когда библиотека загрузится. Соглашаемся, отлаживаем.
     
  3. Zlyden

    Zlyden New Member

    Публикаций:
    0
    Регистрация:
    25 авг 2008
    Сообщения:
    49
    Спасибо, придется отлаживать вручную. Хорошо хоть этот code::blocks имеет редактор удобнее gedit
     
  4. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    А вот кто бы сказал, как поставить бряк на функцию в библиотеке, если в исполняемом модуле уже есть функция с этим именем?
     
  5. Mika0x65

    Mika0x65 New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2005
    Сообщения:
    1.384
    Погибло мое сообщение :dntknw:. Было так:

    'name_of_a_file'::name_of_a_function

    Имя файла с кавычками.
     
  6. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    Ах, спасибо. Оказывается, кавычки еще надо ставить.