0

我在尝试编译时遇到了这个问题speak.js。当emscripten.sh编译器到达这一行时:

$EMSCRIPTEN/emcc -O2 --js-transform "python bundle.py" speak.bc -o speak.raw.js

我收到此错误(以前的部分工作正常):

emscripten

fs.js:338
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
                 ^
Error: ENOENT, no such file or directory 'C:\tmp\tmp0Ak4ij.txt' 
    at Object.fs.openSync (fs.js:338:18) 
    at Object.fs.readFileSync (fs.js:182:15) 
    at read (C:\opt\emscripten\src\compiler.js:36:37) 
    at Object.<anonymous> (C:\opt\emscripten\src\compiler.js:120:29) 
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)
    at process.startup.processNextTick.process._tickCallback (node.js:244:9)
Traceback (most recent call last):
  File "/opt/emscripten/emcc", line 871, in <module>
    final = shared.Building.emscripten(final, append_ext=False, extra_args=extra_args)
  File "/opt/emscripten/tools/shared.py", line 736, in emscripten
    assert os.path.exists(filename + '.o.js') and len(open(filename + '.o.js', 'r').read()) > 0, 'Emscripten failed to generate .js: ' + str(compiler_output)
AssertionError: Emscripten failed to generate .js:
cat: speak.raw.js: No such file or directory

我在 Windows 7 下运行 cygwin;所有 emscripten 健全性检查工作正常,我尝试将 emscripten /tmp 配置(主文件夹中的 .escripten)更改为多个值,授予权限等。似乎从未创建临时文件,所以当它尝试再次访问它时,它打破了。

欢迎任何帮助/指导/建议。

4

1 回答 1

0

如果有人感兴趣,我会发布答案。

不幸的是,我找不到根本原因,但它不适用于 Windows 7 x64 下的 cygwin。

但是,我能够编译,安装 clang,llvm visual studio express ant 此链接中的其余工具

在 VS 2010 中使用 emscripten

并使用 Windows 控制台执行与 emscripten.sh 中相同的操作。但是它不会编译

emcc -O2 --js-transform "python bundle.py" speak.bc -o speak.raw.js

您必须删除-02选项,它可以工作。我正在测试不同的语言/音素,让你知道它是如何工作的

于 2012-10-04T19:19:35.043 回答