On Fri, Feb 11, 2022 at 4:56 AM 'Stefan Lang' via emscripten-discuss < [email protected]> wrote:
> As an update to my question, I'd like to add that I now found out that > apparently emcmake ignores or forgets all environment variables set within > the shell, unless you specifically specify them on the emcmake command > line, again! Armed with this knowledge, I was able to build FreeType and > then Opencascade. However, I still run into same the problem when trying to > build the webGL sample: for some reason, even passing the environment > variables to the FreeType dirs doesn't help. Maybe other variables are > needed here, but it's impossible to figure out what is missing. > Can you say what you mean by "emcmake ignores or forgets all environment variables set within the shell,"? emcmake should behave identically to cmake itself.. its really just a very small wrapper around cmake. If you notice any differences between the way cmake honors environment variables and the way emcmake does please open bug on the issue tracker. > I should point out that I haven't worked with *ix and makefiles for 30 > years, and although I got plenty of advice from colleagues, it's still > possible I did not execute the build and install commands as expected by > emscripten. If someone could post the exact commands needed to build and > install a package with emscripten using the ubuntu bash shell (inside a > Docker environment), that could be very helpful - maybe that would help me > create the missing .cmake files? > Unfortunately there are many ways to build and consume libraries (and header files) so there is no one answer (e.g. pkg-config, autoconf, cmake, all do things differently). One simple option is to create your own install directory (like a mini sysroot) where you install all your libraries and headers (via `make install` or some other method) and then you can pass `-I/path/to/my/headers` and `-L/path/to/my/libraries` to emcc. Alternatively, you can install directly into the emscripten sysroot which lives (by default) in `<emscripten_dir>/cache/sysroot`, in which case they should be available without any extra `-I` or `-L` arguments. Another option is to use something like `vcpkg` which has (at least some) support for emscripten already: https://vcpkg.io/en/index.html. For what its worth, I am hoping to simplify, improve and document the situation regarding installing and consuming libraries. > On Wednesday, 9 February 2022 at 10:29:55 UTC+1 Stefan Lang wrote: > >> Hello >> >> My goal is to build the OpenCascade webGL sample on Windows. Its >> description suggests installing and using emscripten to build the >> webAssembly. I've installed the latest version following the instructions, >> and I could build and run the provided mini examples just fine. >> >> I am having trouble using emcmake to build FreeType and OpenCascade >> statically on Windows. The main issue is that emcmake insists on finding a >> file called >> freetypeConfig.cmake or >> freetype-config.cmake >> But these files don't exist. And if I can resolve this, I may run into >> the same issue with OpenCascade which likewise doesn't provide any >> *config.cmake files. >> >> cmake itself doesn't have this problem when I set freetype_DIR (as >> suggested on the OpenCascade Forums), but apparently emcmake ignores this. >> >> I have already posted this at Opencascade forums, but there are already >> various threads on this topic, and none of the suggestions seem to have any >> effect when using emcmake. >> >> I should mention that Opencascade refers to an old version of FreeType >> (2.5.5), but neither this nor the most current version (2.11.1) can be >> built using emcmake! >> >> I have installed the latest version of emscripten, running Windows 10. I >> would provide more info but I have tried so many different things and >> changed so many parameters that I've lost track, and indeed may need to set >> up everything from scratch again to make sure I haven't introduced side >> effects. (Besides, I will eventually need to install from scratch again on >> the other devs' machines) >> >> Therefore my first question to ask is: what version of emscripten should >> I use for Windows (and how can I query the currently installed version?), >> and is there anything I specifically need to do beyond the descriptions >> provided on the website with regard to Windows? >> >> Second question: I've already spotted various threads dealing with >> building freetype. But as far as I can tell, most if not all were related >> to building on Linux. Is there anything specific I need to watch out for >> when building FreeType on Windows? >> >> Lastly: can I force emcmake not to search for the *config.cmake files? >> Alternately, is there any recommended way how to create them on Windows? In >> short: How can I build FreeType with emcmake on Windows when there's no >> *config.cmake file? >> >> Thanks for reading this far, >> Stefan >> > -- > 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/6155e79a-58d7-499a-826c-d9604093e465n%40googlegroups.com > <https://groups.google.com/d/msgid/emscripten-discuss/6155e79a-58d7-499a-826c-d9604093e465n%40googlegroups.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 on the web visit https://groups.google.com/d/msgid/emscripten-discuss/CAL_va2-UZ_d%3DWvP0-ZpR7As3CsDGhAzTQ2%2BU%3DWEFutKOUTZuBg%40mail.gmail.com.
