<div dir="ltr"><div>Those instructions were very helpful. I now have a docker container with the latest emscripten and fbc compiled from your emscripten branch. However, I get a mutex error in filelayer.cpp</div><div><br></div><div>scons: Building targets ...<br>emcc -o build/filelayer.o -c -Wall -Wno-deprecated-declarations -Wno-unused-but-set-variable -DFBCVERSION=1101 -g -fno-omit-frame-pointer -O3 -DMINIMAL_OS -fno-pie -fwrapv --std=c++0x -Wno-non-virtual-dtor filelayer.cpp<br>filelayer.cpp:39:1: error: reference to 'mutex' is ambiguous<br>   39 | mutex openfiles_mutex(true);  // Non-destructing mutex<br>      | ^<br>./mutex.hpp:14:7: note: candidate found by name lookup is 'mutex'<br>   14 | class mutex {<br>      |       ^<br>/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1/__mutex/mutex.h:24:87: note: candidate found by name lookup is 'std::mutex'<br>   24 | class _LIBCPP_EXPORTED_FROM_ABI _LIBCPP_THREAD_SAFETY_ANNOTATION(capability("mutex")) mutex {<br>      |                                                                                       ^<br>filelayer.cpp:39:7: error: no matching constructor for initialization of 'mutex'<br>   39 | mutex openfiles_mutex(true);  // Non-destructing mutex<br>      |       ^               ~~~~<br>/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1/__mutex/mutex.h:30:3: note: candidate constructor not viable: no known conversion from 'bool' to 'const mutex' for 1st argument<br>   30 |   mutex(const mutex&)            = delete;<br>      |   ^     ~~~~~~~~~~~~<br>/emsdk/upstream/emscripten/cache/sysroot/include/c++/v1/__mutex/mutex.h:28:43: note: candidate constructor not viable: requires 0 arguments, but 1 was provided<br>   28 |   _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR mutex() = default;<br>      |                                           ^<br>2 errors generated.<br>scons: *** [build/filelayer.o] Error 1<br>scons: building terminated because of errors.</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Dec 27, 2023 at 7:54 AM Ralph Versteegen via Ohrrpgce <<a href="mailto:ohrrpgce@lists.motherhamster.org">ohrrpgce@lists.motherhamster.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Oh, I haven't written instructions yet. I need to do that. But quickly:</div><div><br></div><div>If you haven't already, install emscripten:</div><div>git clone <a href="https://github.com/emscripten-core/emsdk.git" target="_blank">https://github.com/emscripten-core/emsdk.git</a></div><div>cd emsdk</div><div>Install "latest" version, or to avoid surprises in nightlies it's probably better to use the same version I have, which is 3.1.42</div><div>./emsdk install 3.1.42<br>./emsdk activate 3.1.42</div><div>Put .../emsdk/upstream/emscripten in your PATH</div><div><br></div><div>Compile FB:<br></div><div>git clone <a href="https://github.com/rversteegen/fbc.git" target="_blank">https://github.com/rversteegen/fbc.git</a></div><div>cd fbc<br></div><div>checkout my 'emscripten' branch (which mostly contains bugfixes. I'll get these upstreamed sometime soonish)</div><div>make -j4 install-compiler install-includes prefix=/install/fb/here<br></div><div>make -j4 install-rtlib TARGET=asmjs-unknown-emscripten prefix=/install/fb/here</div><div>(you can run "make install-rtlib TARGET=..." additional times to compile libraries for other targets)</div><div><br></div><div>Then you can compile with "scons target=js ..."  (add fbc=... or else put the newly compiled fbc in $PATH)</div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 27 Dec 2023 at 07:32, James Paige via Ohrrpgce <<a href="mailto:ohrrpgce@lists.motherhamster.org" target="_blank">ohrrpgce@lists.motherhamster.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>I see when I run `scons target=js` I get</div><div><br></div><div>Error: This installation of FreeBASIC doesn't support this target-arch combination;<br>/usr/local/bin/../lib/freebasic/js-asmjs/libfb.a [or libfbpic.a] is missing.</div><div><br></div><div>Where do I find freebasic/js-asmjs/libfb.a ?</div><div><br></div><div>TMC, have you written any instructions anywhere for how to compile the ohr with emscripten?</div><div><br></div><div>I'm feeling ready to tackle that nightly build :D</div><div><br></div><div>---</div><div>James</div><div><br></div></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>
_______________________________________________<br>
Ohrrpgce mailing list<br>
<a href="mailto:ohrrpgce@lists.motherhamster.org" target="_blank">ohrrpgce@lists.motherhamster.org</a><br>
<a href="http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org" rel="noreferrer" target="_blank">http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org</a><br>
</blockquote></div>