Hi Camil, I'm another Emscripten user trying to do the same. I don't know the answer to your question but I just wanted you to know you're not the only one looking for a solution.
Fernando On Sunday, 14 June 2020 at 12:54:52 UTC+2 [email protected] wrote: > I found this discussion wanting to implement something similar. I now have > something working which uses separate filesystems for each module (could > not get them to use the same FS object / BrowserFS to sync them). In each I > mount an IDBFS, and I make sure to call syncfs at the appropriate places so > that the contents are synced. This is far from ideal (may be too slow for > some use cases; probably duplicates memory), but works for me now. > > Still, is there any reason why it would not be possible to pass the FS of > another module in the MODULARIZEd constructor for a new module (perhaps all > that is needed is `var FS=FS||...` instead of `var FS=...`?)? If it were > possible, that would be a much neater solution, but perhaps I'm missing a > reason why this is not feasible. > > Camil > > On Thursday, 23 April 2015 23:24:35 UTC+2, Alon Zakai wrote: > >> I don't think the FS was designed for that purpose. But I'm not sure if >> there is a reason stopping it from working that way. You would need to >> somehow grab the FS object from one module and make it accessible to the >> other, so they share one FS (probably need some new Emscripten options for >> that). If you did that, things might work - at least I can't think of a >> reason for them not to ;) >> >> Another option is to write glue code, as you said, to manually move >> around data between two FSes. >> >> A third possible route is to use BrowserFS ( >> https://github.com/jvilk/BrowserFS ). It can plug into Emscripten >> filesystems, and I'm not sure but I think might be able to handle multiple >> external sources. >> >> - Alon >> >> >> >> On Thu, Apr 23, 2015 at 1:48 AM, Łukasz Adamczak <[email protected]> wrote: >> > I'm looking to implement a web application which combines 2 Emscripten >>> modules. >>> >>> Think an IDE with a text editor, an Assembler (module 1) and an Emulator >>> (module 2). >>> https://dl.dropboxusercontent.com/u/118061/neside/neside-flow.png >>> >>> The general flow I'm hoping to achieve: >>> >>> 1. Content of a <textarea> is written as a text file to the FS (manually >>> written JS). >>> 2. Emscripten module 1 ("Assembler"): >>> - reads the text file from the FS >>> - writes a bin file to the FS. >>> 3. Emscripten module 2 ("Emulator"): >>> - reads the bin file from the FS and acts on it >>> >>> I have successfully implemented both modules in isolation. >>> I can also use MODULARIZE=1 and EXPORT_NAME to include 2 modules in one >>> page. >>> >>> However in this setup, I am unable to access the filesystem and - much >>> less - share it across modules. >>> >>> I could use some help with the following: >>> >>> 1. How do I access "FS" when I use MODULARIZE=1? FS is not public and I >>> can't #readFile or #writeFile. >>> 2. Can the FS be shared across separate Emscripten modules? Or will I >>> need to write some glue code to: >>> - take data out of Assembler's FS >>> - put the data into Emulator's FS >>> >>> Thanks! >>> Łukasz >>> >> -- >>> 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]. >> >> >>> For more options, visit https://groups.google.com/d/optout. >>> >> -- 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 on the web visit https://groups.google.com/d/msgid/emscripten-discuss/4e4892c4-84f9-4880-9f84-0727b6c6dbden%40googlegroups.com.
