Discuss here different C compiler set ups, and compiling executables for the ESP8266

User avatar
By Slaff
#35641 Guys, thanks for the hints.

I was able to compile qemu (latest git versions), create files for the -kernel parameter(compile code using SDK 1.4) and able to attach the open source xt-gdb to the running qemu(I am using esp-open-sdk for building the toolchain and Ubuntu 14.04 as OS).

After I start the debugger and load the application with the debug symbols I am able to "list" the point where I am at the moment. And the debugger shows me that I am in the user_init function. Which is great.

But then there are two problems that I am experiencing at the moment.

The first one is that the debugger is segfault-ing when I add a "bookmark <function_name|or line number>" and then "continue".
The second problem is that I cannot "step" or "next" after the initial breakpoint.

Did someone had success with breaking and debugging step by step? Can someone give me hints what am I doing wrong?
User avatar
By captain_morgan
#42389 I'm presently in about the same spot as you. I've got it actually running but not doing much. When I don't get a seg fault on adding a breakpoint the console output lists something like the following seemingly forever.

Code: Select allesp8266_spi_write: +0x00 = 0x08000000
esp8266_spi_read: +0x00: 0x00000000
esp8266_spi_read: +0x10: 0x00000002
esp8266_spi_write: +0x04 = 0x2007c1e0
esp8266_spi_write: +0x40 = 0x00000000
esp8266_spi_write: +0x44 = 0x00000000
esp8266_spi_write: +0x48 = 0x00000000
User avatar
By Mathieu
#43202 Hi,
I had some issue for compiling qemu.
On my archlinux, g_mem_set_vtable is now deprecated and as the -Werror is used, this break the compilation.
So I've try to rebase the esp8266 branch on the master branch.
The result is available here https://github.com/mmaret/qemu-xtensa/tree/build_fix
At the end, I can run qemu for esp8266 and link it to gdb.
But I have not done any futher test.
User avatar
By jcmvbkbc
#43208
Mathieu wrote:On my archlinux, g_mem_set_vtable is now deprecated and as the -Werror is used, this break the compilation.

There's --disable-werror flag for configure for that.