мы используем Sun Solaris для разработки наших приложений и компилируем 64-битные приложения с использованием -m64.
Но 32-битный инструмент GDB был установлен на моей машине, и мы не можем отладить наше 64-битное приложение.
Выход как
$ gdb cxlog
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"and "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.10"...
(gdb) break main
Breakpoint 1 at 0x100001464: file cxlogger.c, line 147.
(gdb) run
Starting program: /usr33/SIR07140/GTB_HOME/GoTx_HOME/samples/cxlog
procfs:4337 -- process not stopped.
procfs: ...giving up...
(gdb) n
procfs: couldn't find pid 12372 (kernel thread 1) in procinfo list.
(gdb).
нормальная отладка хвалится как следующая & шаг не работает.
Если я компилирую свое приложение, используя -m32, GDB — рабочий файл.
Заранее спасибо.
Сундар Раджендран.
У вас есть три варианта — в порядке моих предпочтений:
Единственный способ отладки 64-разрядного двоичного файла — это создание gdb, созданного для 64-разрядного [или какого-либо другого отладчика, но в любом случае его необходимо создавать для 64-разрядных целевых объектов]
Других решений пока нет …