floooh / oryol

A small, portable and extensible C++ 3D coding framework

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ninja config fails to generate a wasm build on Windows

hb3p8 opened this issue · comments

Hi, I have a little trouble with the combination of Ninja builder and wasm generator on windows (wasm-ninja-release).

It goes fine until the linking and then the error looks like:

Traceback (most recent call last):
  File "E:\Projects\occ-web3d\fips\fips-sdks\win\emsdk-portable\emscripten\incoming\\em++", line 16, in <module>
    emcc.run()
  File "E:\Projects\occ-web3d\fips\fips-sdks\win\emsdk-portable\emscripten\incoming\emcc.py", line 891, in run
    setattr(shared.Settings, key, eval(value))
  File "<string>", line 1
    native-wasm'
               ^
SyntaxError: EOL while scanning string literal

Ninja works fine with the asm.js build.
Make works fine with any build (but is not available by default on Win).

argh, that looks familiar... see here: floooh/fips#163, I was sure I had fixed that in this commit: floooh/fips@240c3b9, but seems it isn't working everywhere, could be that the previous version worked with ninja, but not make, and the fix makes it work with make, but broke ninja :/

If it works with make I would recommend this as a workaround. With ninja you will sooner or later run into cmdline length issues on Windows. With make this is fixed by using linker-response-files.

...hmm but that other ticket also uses ninja, not sure what's happening there, I currently don't have a machine with emscripten installed (installing now, but can only check tomorrow evening).

Thank you for your response! It is not super urgent, so please take your time :) In a meantime, I will try to look at this too.

Hmm I cannot reproduce this on a Windows7 machine both with the normal terminal or Cmder...

> fips set config wasm-ninja-release
> fips gen
> fips build

works... maybe it's the python or cmake version?

I have:

  • python: 2.7.12
  • cmake: 3.7.2

Indeed in new versions of Oryol and Fips the problem is gone! Sorry for hanging issue.