问题标签 [emscripten]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 使 openssl RSA 算法具有确定性
我正在尝试使用带有 emscripten 的 openssl 编译程序,但它返回的是假密钥。当给定相同的种子时,我希望 RSA_generate_key() 每次返回的密钥都是相同的,这样我就可以测试可能出了什么问题。
我尝试用我自己的实现替换 RAND_poll,它总是将相同的数字添加到池中并定义GETPID_IS_MEANINGLESS
.
我还需要删除/禁用/替换什么?
测试用例赞赏。
谢谢
emscripten - 让 Emscripten 流式音频工作
我正在尝试让 SoLoud 音频引擎与 Emscripten 一起工作,但它的行为相当奇怪。作为一个实验,我正在播放一个 500 毫秒的正弦波。
使用 2048 个样本缓冲区,延迟大约为一秒或更长时间,输出的是 25 毫秒的正弦波。如果我将缓冲区减少到 256 个样本,延迟会好一些(仍然很差),输出会增长到 500 毫秒左右,但不完全是 500 毫秒,而且声音无论如何都不干净。这是用 Firefox 的;铬是沉默的。
emscripten/tests/sdl_audio* 测试都使用 sdl_mixer 而不是直接使用流。
所以我的问题是 - 有没有办法让流音频(以便我自己进行混合并将样本缓冲区提供给某些 API)在 emscripten 下工作?
llvm - emscripten llvm-link 健全性测试错误
我正在尝试安装 emscripten 并且我已经安装了 clang,node 但是当我运行 emcc 命令时它显示一个错误Cannot find /usr/bin/llvm-link, check the paths in ~/.emscripten 。我已经安装了 llvm-3.2 并在 /usr/bin 目录中创建了 llvm-link-3.2 文件,但仍然出现此错误。
我认为 llvm-link 在代码中的某些位置进行了硬编码,但无法找到它的位置。
我什至成功地创建了所需的 ~/.emscripten 文件。
我的操作系统是 ubuntu 12.04
c++ - Emscripten 不从静态库链接
我有一个程序我想通过 Emscripten 进行交叉编译。所以我创建了一个静态库foo_core
,现在尝试通过以下方式将其链接到 html 页面:
现在我当然会尝试找出_Z12fooiiii
丢失的原因。最后做:
揭示了,该函数实际上存在于libfoo_core.js
. 所以我现在很困惑,非常感谢有人向我解释为什么这不起作用。
javascript - 如何将用python编写的函数编译为JavaScript(emscripten)?
我有一个用 python 编写的简单函数,我想将它移植到 javascript。
我已经将 python 2.7 编译成一个 .so 库,所以这不是问题。
我遇到的问题是,在我用 cython 编译程序后,函数名都被打乱了,这意味着我不知道在运行 emcc 时如何保留函数。
有人有使用 emscripten 将 python 程序编译为 js 的经验吗?
任何信息,将不胜感激。
注意:我想保留 python 的确切功能,我不想要将 python 程序转换为 javascript 的东西。
java - LLVM:无法让 vmjc 工作
我想用 LLVM 将 Java 编译为 Javascript,如下所示:
- *.java 到 *.class,通过 Oracle 的 javac
- *.class 到 *.bc,通过 vmkit 的 vmjc
- *.bc 到 *.html 与 JS,通过 emscripten 的 emcc
创建的 HTML/JS 文件(大约 170KB 大)ReferenceError: _StartJnjvmWithoutJIT is not defined
在打开时会在浏览器控制台中打印。尝试对此进行调试时,我注意到 *.bc 文件 (LLVM IR) 甚至似乎都不包含我的代码,即我正在打印的字符串不在其中。
我做了什么:
无论我使用 Java 6 还是 7,它都会打印出来:
*.bc
无论如何它都会创建一个文件。*.ll
当我将其转换为非二进制(MyTest_main
不过,那里确实出现了一个类似的字符串:
那么,这种方法是否可行?关于 Java 版本的警告是什么意思?为什么我的“hello world”字符串没有出现在*.ll
代码中,这是个问题吗?
javascript - Emscripten 似乎不使用 asm.js
我在 emscripten 文档中阅读了 emscripten 默认编译为 asm.js 优化,但如果我打开编译后的代码,我找不到任何“使用 asm;” 如何得到它?我应该手动添加还是编译错误?
目前我正在使用“emcc main.c -o out.html”进行编译,也尝试使用 -02 标志。
compiler-errors - Emscripten编译错误
我最近刚开始使用 emscripten,每当我尝试使用它编译某些东西时都会遇到这个错误。即使出现错误,它似乎也能正常工作。它生成的代码在我的浏览器中运行得很好,所以我不确定我是否应该担心它。
这是错误:
目前,我并不担心,因为一切正常。但我想了解它为什么会打印出错误,以及如何修复它。
webgl - 在 emscripten 中运行着色器代码
我正在尝试转换一个起诉 emscripten 的小游戏。我设法编译它而没有任何错误,但是在尝试编译/使用着色器时出现以下错误 WebGL:INVALID_OPERATION:useProgram:程序无效 WebGL:INVALID_OPERATION:getAttribLocation:程序未链接
这是着色器代码
顶点:
分段
有什么帮助吗?谢谢你。
javascript - Box2d.js 脉冲/力和初始位置
当我遇到两个问题时,我正在“玩” kripken 的 box2d。我选择了这个前叉,因为它似乎是最快和最常用的。
- API 在 bodyDef 上定义了位置,但你“必须”在 body 上给出它。
- 力量,冲动,......保持附着在身体上,产生意想不到的恒定速度。
有人以前有这些行为吗?有人有任何提示吗?
这来自一个复杂的应用程序,但我已经简化了演示: