• So i want to make changes to BangleJS software and i want to make sure the changes i make don't effect the emulator functionality.

    So what I'm curious how does the webIDE link up with the Espruino library. I see there's a webpages for the different bangle watches. I see there is this blob that I'm guessing is the emulator.

    So I know i need to build this in Espruino repo and then i guess copy it to this folder?

  • So i see there's the linux_build_bangleJS2, but not one for the bangleJS1.

  • The emulator for the IDE is build with this script: https://github.com/espruino/EspruinoWebI­DE/blob/master/extras/create_emulator.sh­

    So the actual board targets are (confusingly) just EMSCRIPTEN.py and EMSCRIPTEN2.py

    The Linux build was an unused attempt at making a linux executable for testing Bangle.js apps, but in the end I figured it was safer just to use the JS Emscripten app for that

  • With the latest build Espruino, EsperuinoWebIDE and EMCC, i'm getting this error when i try to build the Emulator.

    error: undefined symbol: emscripten_memcpy_js (referenced by root reference (e.g. compiled C/C++ code))
    warning: To disable errors for undefined symbols use -**sERROR_ON_UNDEFINED_SYMBOLS=0**
    warning: _emscripten_memcpy_js may need to be added to EXPORTED_FUNCTIONS if it arrives from a system library
    Error: Aborting compilation due to previous errors
    emcc: error: '/home/brendena/code/newCode/emsdk/node/­16.20.0_64bit/bin/node /home/brendena/code/newCode/emsdk/upstre­am/emscripten/src/compiler.mjs /tmp/tmp54wpsiw5.json' failed (returned 1)

    NodeJS -v 20 - but i don't know if this matters because EMCC uses its own NodeJS

  • So i tried to add it to the EXPORTED_FUNCTIONS, but i get this error.

    wasm-ld: error: symbol exported via --export not found: emscripten_memcpy_js

    I don't really get the error. I feel like a memcpy function should be fairly universal?

  • That's odd - I'm not sure to be honest. Currently it's feeling like just playing catch-up with all the stuff everyone else randomly changes is a full-time job.

    I'm building with Emscripten 3.1.13 and that works for me, so you could try that

  • I can see that. That's the beauty and problem with coding. Its always changing. haha

    So that change is from
    3.1.13 - 06/02/2022

    So I'll look through the change log and see what's changed. Logs

  • Its interesting from if i'm inside the esperuino repo and build it. Its fine.

    • make board="EMSCRIPTEN2" RELEASE=1

    But when the same command runs in the esperuinoWebIDE. It fails? Have to look into this more.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

How does the BangleJS emulator link with the Espruino repo

Posted by Avatar for user156811 @user156811

Actions