gdb и shared library, отладка динамической либы

Тема в разделе "WASM.UNIX", создана пользователем Dude03, 26 янв 2007.

  1. Dude03

    Dude03 New Member

    Публикаций:
    0
    Регистрация:
    22 апр 2006
    Сообщения:
    48
    Возникла такая проблема : нужно отладить шаред либу. Скомпилил, отладочную инфу подрубил.
    Препдположим, что host-prog - программа, shared.so - shared library
    Вот:
    Код (Text):
    1. (gdb) file host-prog
    2. Reading symbols from host-prog...
    3. (no debugging symbols found)...done.
    4. (gdb) symbol-file shared.so
    5. Reading symbols from shared.so...done.
    6. (gdb) b Func
    7. (gdb) Cannot access memory at address 0x1000120a # хмм ну в принципе ясно - там же ничего еще нету=(
    8. load shared.so
    9. (gdb) You can't do that when your target is `exec' # не могу загрузить
    10. add-shared-symbol-files shared.so
    11. (gdb) b Func
    12. (gdb) Cannot access memory at address 0x1000120a
    13. (gdb) load shared.so
    14. (gdb) You can't do that when your target is `exec'
    Что мне сделать, чтобы отладить?
    PS. 0x1000120a - сильно на адреса не смотрите. Все нормально с ними(Под виндой гдб юзаю).
     
  2. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Не знал что So можно под виндами юзать.
    У меня под никсом дебаггер нормально либы листает
    В одном So у меня форма была - так он ее открыть умудрился
     
  3. Dude03

    Dude03 New Member

    Публикаций:
    0
    Регистрация:
    22 апр 2006
    Сообщения:
    48
    Это я просто поменял расширение для наглядности. Не в этом дело.
    Просто библиотека с программой линкуется динамически, т.е. в процессе выполнения. Поэтому в моем случае, я просто уверен, надо произвести некоторые дополнительные действия.
     
  4. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Dude03
    Конечно давно это было, но команда load предназначена просто для загрузки
    отладочных символов для отлаживаемого файла, а не для загрузки доп.файлов