Debugging SW in DS-5 Eclipse Using DE-10 Standard board (ARM Cortex-A9 Core)
Hi, Folks,
I have an Ubuntu VM (16.04) set up to connect to DE-10 board through the JTAG interface and the mini-Uart. I was able to blast FPGA image into the board; run a lightweight Linux shell through putty. I succeeded in running the example for DE-10_Standard_GHRD and HPS_FPGA_LED by executing the binary on the lightweight Linux shell. But when I tried to use Eclipse to build the software project for a debuggable version, I ran into all kinds of issues. I'm new to this embedded design. Would appreciate any help. Thanks!
1. Can we run eclipse in debugger mode for DE-10? Right now my DE-10 has a lightweight linux system (LXDE by DE-10) installed. How is the bare metal program loaded into the linux system by the debugger? Is it through linker target image _ro address? How do I know the value of the address?
**** Build of configuration Debug for project HPS_FPGA_LED_ARM5 ****
make all
Building file: ../main.c
Invoking: ARM C Compiler 5
armcc -Dsoc_cv_av -I/home/mei/intelFPGA_soceds/17.0/embedded/ip/altera/hps/altera_hps/hwlib/include/soc_cv_av -I/home/mei/intelFPGA_soceds/17.0/embedded/ip/altera/hps/altera_hps/hwlib/include -I/home/mei/intelFPGA_soceds/17.0/embedded/ds-5/sw/gcc/arm-linux-gnueabihf/libc/usr/include -O0 -g --md --depend_format=unix_escaped --no_depend_system_headers -c -o "main.o" "../main.c"
Warning: C9931W: Your license for feature ulteval_armcompiler will expire in 14 days
"/home/mei/intelFPGA_soceds/17.0/embedded/ds-5/sw/gcc/arm-linux-gnueabihf/libc/usr/include/bits/stat.h", line 72: Error: #70: incomplete type is not allowed
struct timespec st_atim; /* Time of last access. */
^
"/home/mei/intelFPGA_soceds/17.0/embedded/ds-5/sw/gcc/arm-linux-gnueabihf/libc/usr/include/bits/stat.h", line 73: Error: #70: incomplete type is not allowed
struct timespec st_mtim; /* Time of last modification. */
^
"/home/mei/intelFPGA_soceds/17.0/embedded/ds-5/sw/gcc/arm-linux-gnueabihf/libc/usr/include/bits/stat.h", line 74: Error: #70: incomplete type is not allowed
struct timespec st_ctim; /* Time of last status change. */
^
"../main.c", line 47: Error: #852: expression must be a pointer to a complete object type
h2p_lw_led_addr=virtual_base + ( ( unsigned long )(
LT_LWFPGASLVS_OFST +
ED_PIO_BASE ) & ( unsigned long)(
W_REGS_MASK ) );
^
../main.c: 0 warnings, 4 errors
subdir.mk:18: recipe for target 'main.o' failed