Re:Flutter 2
by iainmerrick on Thursday March 04, 2021 @03:30PM
(#26347834)
Not bad! Sounds like the tooling has improved since I last looked.
How about debugging? Is it possible to step through a mix of C and JS stack frames?
The Chrome devtools have added experimental DWARF debugging support, but for big projects that's still a bit of a hassle:
https://developers.google.com/web/updates/2020/12/webassembl...
The embedded Javascript can be debugged as usual.
In my case I usually debug the platform-agnostic code compiled natively in IDEs like Visual Studio or Xcode, and for the HTML5 specific code (which is just a few hundred lines) traditional "printf-debugging".
With Emscripten, you can embed Javascript source code directly into the C code and then call the embedded JS function from the C side as well as C functions from inside Javascript.
E.g. JS embedded in C code:
https://github.com/floooh/sokol/blob/4c56a2ee15d81cac91b738b...
...called from C:
https://github.com/floooh/sokol/blob/4c56a2ee15d81cac91b738b...
...and a C function:
https://github.com/floooh/sokol/blob/4c56a2ee15d81cac91b738b...
...called from a JS function embedded in the C code:
https://github.com/floooh/sokol/blob/4c56a2ee15d81cac91b738b...