You can load the application in a browser, then open the devtools and
inspect the wasm there.

In Chrome for example, go to the Sources tab in devtools and open the wasm
file. That shows a disassembled version, which might be enough information
already, and you can also rightclick and save it.


On Wed, Jun 3, 2026 at 4:32 AM John Dallman <[email protected]> wrote:

> I am *not *producing a web application. Indeed, I'm thoroughly unfamiliar
> with doing that; my background is C, C++ and assembly languages.
>
> I'm porting a large library written in C and C++ to WebAssembly using
> Emscripten, along with the library's test harness. The library is intended
> to be used in web applications, written by organisations that license this
> (commercial, closed-source) library. I'm planning to ship the library as an
> archive library, to be statically linked into web applications. I am not
> producing a JavaScript binding for it at present, because the API is large,
> complex, and not designed to be JavaScript-friendly: it uses lots of
> pointers.
>
> I'm linking the application and the test harness statically, with
> SINGLE_FILE, to produce a large .js file to run in Node. It's
> convenient for my build system to produce a single file, and that has also
> caused me to notice a potential problem.
>
> As I'm shipping an archive library, it's possible to do a link which
> produces basic debug symbols, such as function names. Emscripten doesn't do
> this by default, but it can. My management is rather jumpy on that subject,
> feeling that the names of functions in the library reveal significant
> information about the ways it operates. Since a web application is easier
> to get hold of than a licensed on-premises application, they're concerned
> about intellectual property protection. So, we will require organisations
> that license the WebAssembly library to not ship their web applications
> with debug symbols.
>
> That raises the question of "How can we tell if they are complying with
> that requirement?"
>
>    - If they ship a .wasm file, it's easy: we use emnm to list debug
>    symbols.
>    - If they ship a .js file, emnm seems unable to handle that. Which is
>    reasonable, since the wasm code is encoded as strings within the .js.
>
> Is there a way to extract .wasm code and debug symbols from within a
> SINGLE_FILE .js file?
>
> Thanks in advance,
>
> John
>
> --
> You received this message because you are subscribed to the Google Groups
> "emscripten-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion visit
> https://groups.google.com/d/msgid/emscripten-discuss/CAH1xqgnZrPBrms5hBB9cco-sTv-Vn5PNYep4xMTg3kp32gNuqQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/emscripten-discuss/CAH1xqgnZrPBrms5hBB9cco-sTv-Vn5PNYep4xMTg3kp32gNuqQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/emscripten-discuss/CAEX4NpR%2BzcSC2LFkaCFS%3DMcdRLHQv22P7e4JeOTzQqGUwk_UBQ%40mail.gmail.com.

Reply via email to