Hi, Does Emscripten support loading multiple Emscripten "executables" into one page? I can't think of anything in particular that would cause this to break embind, but I'm not surprised either. It's generally not a good idea to include two "executables" in one page, because then you're duplicating all the stdlib code, stack memory, and other base overhead.
But if you genuinely need this to work, additional overhead notwithstanding, maybe you can provide the specific errors that are causing problems and we can go from there. Cheers, Chad On Thu, Dec 11, 2014 at 2:59 AM, Philippe Sengchanpheng < [email protected]> wrote: > Hello, > > I've been testing things with emscripten, especially using Embind to call > C++ code from javascript. > With a test case such as the tutorial, it works ok. > > However, I tried with a project where I'm binding 2 base classes (let's > say Toto and Tutu). > I get 2 files, Toto.js and Tutu.js. > If I use either of them separately in a test script, they work. > However, if I try to use both : > > <script src="Toto.js"></script> > <script src="Tutu.js"></script> > <script> > ... do toto stuff > ... do tutu stuff > </script> > > Then it doesn't work. > While checking around the 60k+ lines of each files, it seems some > functions called prerun(), run() and postrun() are defined in each file. > And thus it might be that javascript doesn't like redefinition. > > Embind should work with multiple files, shouldn't it? > I searched for demos, but only found ones in a single file. > > I tried putting a separate binding file : > > #include <emscripten/bind.h> > #include "emsLib/Tutu.hpp" > //#include "emsLib/Toto.hpp" > > EMSCRIPTEN_BINDINGS(Lib_test) > { > emscripten::class_<Tutu>("Tutu") > .constructor<int>() > .yadayada > ; > > emscripten::class_<Toto>("Toto") > .constructor<std::string>() > .stuff > ; > } > > But then I get warning about unresolved symbols, and functions that aren't > exposed. > > I can't be the only one to use embind on multiple files in a project, what > do I do wrong? > What am I supposed to do in that case? > > -- > 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. > -- Chad Austin Technical Director, IMVU http://engineering.imvu.com <http://www.imvu.com/members/Chad/> http://chadaustin.me -- 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.
