| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > GNU toolchain > Eclipse + gdb в Windows |
| Автор: dartan 22.6.2013, 15:12 | ||||||||
| Здравствуйте! Есть проект в папке с:\ws\pro\ , в нем лежит файл ex.elf Eclipse для запуска отладки выполняет в GDB команду, которую я вписал вручную:
Вроде бы и все отлично, только привязываться к абсолютному пути workspace-а нельзя. По этому я решил сделать так:
Но ${workspace_loc} подставляет с:\ws, вместо нужного мне с:\\ws. И соответственно gdb думает что я хочу передать ему escape-последовательность \w вместо слеша. Вопрос: как сказать gdb что я передаю ему путь без escape-последовательностей. Я пробовал такие варианты:
Но в любом случае gdb разбирает бэкслешы как начала escape-последовательностей. Заставить eclipse выдавать в переменной ${workspace_loc} форвардслеши или екранировать бэки у меня тоже не получилось. ЗЫ на линухе вариант
работает. Неужели на винде не получится? |
| Автор: leniviy 22.6.2013, 20:34 |
| Каким образом команда передается в gdb? Через командную строку или файл с коммандами? Может быть поменять в настройках эклипса путь к gdb на путь к обертке, который фиксит слеши и запускает gdb? Зачем писать свою команду? Там же в настройках run configuration д.б. что-то вроде "executable path". |
| Автор: dartan 22.6.2013, 21:02 |
| Спасибо за ответ! В gdb передается из многострочного поля ввода, которое есть в Debug Configuration (то есть как через "файл с командами"). Я так подозреваю Eclipse через JRE создает процесс gdb и кидает ему в stdin команды из этого поля ввода (или как оно там в win происходит На счет последнего: вызывается не обычный gdb а специализированный gdb для отладки встраиваемых систем (но с точки зрения экранирования путей должно быть все идентично, так как тулчеин якобы полностью совместим с GNU GDB). Дак вот: на самом деле мне нужно выполнить не только команду load а еще и file. Что-то вроде "executable path" есть, и оно корректно передает пути, но оно выполняет "load и symbol-file" вместо "load и file". А тулчеиновский gdb почему-то крашится от symbol-file. Но это все совсем другая история. Я надеялся на то что в оригинальном GNU GDB должна быть возможность запрета парсинга прямых слешов, или вообще есть возможно такая универсальная escape-последовательность, которая запрещает другие escape-последовательности. Или может есть возможность заставить еклипс подставлять в своих переменных юниховые слеши |
| Автор: leniviy 22.6.2013, 21:48 |
| я в этом посте не то запостил |