Я успешно построил и установил ветку GDB Ian Buclaw's (ibuclaw) на github на моем Ubuntu 13.10 x86_64 с его компилятором по умолчанию GCC 4.8.1.Отладка с помощью GDB Невозможно выполнить поиск D Программные символы
Мне пришлось удалить файл ld
из подкаталога bin
в противном случае DMD жалуется на предмет sysroot в фазе ссылки.
Когда я скомпилирую свою тестовую программу и запускаю ее через GDB, у меня есть проблемы .
я могу сделать break main
, бегать и GDB останавливается в начале main
но когда я next
я получаю нежелательные выходной
Single stepping until exit from function main,
which has no line number information.
0x00007ffff760ede5 in __libc_start_main() from
/lib/x86_64-linux-gnu/libc.so.6
Не ibuclaw-х GDB должны работать здесь?
Моя тестовая программа была составлена в
dmd -debug -g -gs -wi t_array.d -oft_array
без каких-либо предупреждений, ни ошибок. Я также попытался притвориться C
dmd -debug -g -gc -gs -wi t_array.d -oft_array
с таким же результатом.
Далее, когда я делаю b
, за которым следует вкладка, большинство символов в список завершения не разминирован.
Моя тестовая программа выглядит как
import std.stdio, std.algorithm;
void main(string args[]) {
int[] x;
writeln(x.sizeof);
if (x) {
writeln("Here!");
} else {
writeln("There!");
}
int xx[2];
auto xc = xx;
xc[0] = 1;
writeln(xx);
writeln(xc);
int[2] xx_;
auto hit = x.find(1);
if (hit) {
writeln("Hit: ", hit);
} else {
writeln("No hit");
}
int[2] z; // arrays are zero initialized
writeln(z);
assert([].ptr == null);
assert("ab"[$..$] == []);
auto p = "ab"[$..$].ptr;
writeln(p);
assert(p != null);
}
Все работает прямо сейчас! Просто замечательно! –
Когда я запускаю его, как указано выше, вряд ли какой-либо символ D отображается правильно, когда вы делаете 'print SYMBOL' в GDB в отношении демпфирования имени и их значения. Это текущее состояние GDB ibuclaw или я что-то пропустил? –
GDB еще не может развернуть все символы D. Iain Buclaw (основной разработчик проекта GDC) недавно сделал некоторые улучшения, которые вскоре, надеюсь, будут объединены в основной код GDB, что очень поможет нам. Вы пытались скомпилировать свою программу D с помощью GDC? – DejanLekic