Как отладить программу Linux C ++ из Windows с Eclipse? - PullRequest
4 голосов
/ 13 января 2012

Я использую безголовый (т.е. без экрана) удаленный сервер Ubuntu x64 для разработки приложения C ++ (без пользовательского интерфейса).

Я хочу удобно (как в IDE, а не из командной строки) отлаживать эту программу из windows (7/64), с Eclipse, если это возможно. У меня есть общий доступ к Windows между двумя пользователями и полный root-доступ на обеих машинах.

До сих пор я слышал о двух решениях:

  1. Удаленный GDB
  2. Удаленный X-сервер

Я работал над решением 1: собрал Cross GDB, скопировал мою программу и библиотеки на Windows. Я могу удаленно GDB из командной строки Cygwin, но не из Eclipse (застрял на "запуск ... 85%" без сообщения об ошибке или журнала)

Я также работал над решением 2: установил xauth, установил переадресацию X, установил xming на мои окна, установил DISPLAY на ящик linux. Но никакой эффект «не могу открыть DISPLAY xxx» без каких-либо простых проблем.

При поиске этих проблем я нахожу только устаревшие страницы или другие проблемы.

Кто-нибудь делал это? Можете ли вы поделиться советами или свежими указаниями по удаленной отладке приложения C ++ linux из Windows?

Ответы [ 3 ]

1 голос
/ 14 января 2012

Я предлагаю установить X11 сервер на вашем компьютере с Windows (например, Xming возможно?) И сделать ssh -X с некоторыми клиентскими приложениями X11 (например, emacs, ddd при необходимости xterm) на вашем сервере Linux. Не используйте сложные вещи, такие как Eclipse. Вы можете просто использовать emacs (удаленно на сервере Linux, отображаться на настольном сервере Windows X11) ...

Как только emacs работает хорошо (работает на удаленном сервере Linux, отображается на настольном сервере Windows X11), вы можете запустить gdb внутри него.

Чтобы заставить ssh -X работать, вам необходимо настроить его соответствующим образом. Может быть, вы забыли этот шаг. Чтобы проверить это, просто используйте ssh -X yourlinuxhost xterm и работайте над конфигурацией, пока этот шаг не сработает.

Конечно, вы также можете установить Linux на свой ноутбук или настольный компьютер, возможно, внутри виртуальной машины над Windows.

NB. Я никогда не использовал Windows, но я знаю, что для него существуют некоторые серверы X11.

0 голосов
/ 28 июля 2015

Вы можете использовать следующий простой плагин для Eclipse.

http://marketplace.eclipse.org/content/direct-remote-c-debugging

Требуется просто ssh-соединение с сервером, и он заботится обо всем остальном

0 голосов
/ 13 января 2012

Существует плагин Eclipse RSE (Remote System Explorer), он может делать то, что вы ожидаете. База кода может быть на сервере Linux, Eclipses использует telnet / ssh для входа в систему. Выполнение снова может произойти на сервере, для отладки используется собственный gdb.

...