Возникла похожая проблема - пытаюсь отлаживать программы с помощью собственноручно собранный arm-linux-gdb на хосте + gdbserver из uClinux 20070130 на целевом (EA LPC2468).
Соединение как понимаю проходит нормально:
CODE
root# gdbserver 192.168.0.7:1234 hello
Process hello created; pid = 195
Listening on port 1234
Remote debugging from host 192.168.0.7
Но отлаживать не получается:
CODE
$ arm-linux-gdb hello.gdb
GNU gdb 6.8
This GDB was configured as "--host=i686-pc-linux-gnu --target=arm-linux"...
(gdb) target remote 192.168.0.10:1234
Remote debugging using 192.168.0.10:1234
0xa1840050 in ?? ()
(gdb) b main
Cannot access memory at address 0x3c
Бинарники собирались в sdk, который поставляют Embedded Artists, Makefile для простенького HW следующий:
CODE
CC=/home/user/uClinux-dist/tools/ucfront-gcc arm-elf-gcc
DEST=/home/user/nfs
FLAGS=-Wall
CFLAGS=-Os -DEMBED -Dlinux -D__linux__ -Dunix -D__uClinux__ -fomit-frame-pointer -fno-common -fno-builtin
LFLAGS=-Wl,-elf2flt="-r"
TARGET=hello
OBJECTS=$(TARGET).o
.PHONY: all
all: $(TARGET)
$(TARGET): $(OBJECTS)
$(CC) $(FLAGS) $(LFLAGS) -o $@ $^
%.o: %.c
$(CC) $(FLAGS) $(CFLAGS) -c $^
install:
cp $(TARGET) $(DEST)
clean:
rm -f *~ *.gdb *.o
Еще я честно говоря не очень понимаю, каким образом elf файл hello.gdb c отладочной информацией должен согласовываться с flt файлом на целевом. Может у кого-нибудь был опыт отладки в подобных условиях?
Сообщение отредактировал Raydan - May 1 2009, 06:12