Можно ли отладить программу, запущенную на удаленной цели, к которой у меня есть доступ по ssh, используя локальные исходные файлы?
Скажем, у меня есть программа hello.c в каталоге /home/jla/hello
на моей домашней машине.
И на удаленной машине я помещаю этот же файл в каталог / hello и компилирую его
$ gcc -g -o hello hello.c
, а затем удалите удаленный hello.c, но оставьте исполняемый файл.
Могу ли я затем запустить GDB локально, передать его по ssh на удаленную машину для запуска исполняемого файла, но использовать локальные источники в качестве ссылки?
Примечания:
Досадно, удаленный компьютер очень урезан и не может быть изменен. У него есть GDB, но у него нет GDB-сервера
Обратите внимание, что локальный и удаленный компьютер имеют разные архитектуры. В данном конкретном случае 64-битные и 32-битные Intel
Что я действительно хочу сделать, так это запустить его под emacs / gud. Но это было бы отличным началом.