问题标签 [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.

0 投票
1 回答
420 浏览

c - 使 openssl RSA 算法具有确定性

我正在尝试使用带有 emscripten 的 openssl 编译程序,但它返回的是假密钥。当给定相同的种子时,我希望 RSA_generate_key() 每次返回的密钥都是相同的,这样我就可以测试可能出了什么问题。

我尝试用我自己的实现替换 RAND_poll,它总是将相同的数字添加到池中并定义GETPID_IS_MEANINGLESS.

我还需要删除/禁用/替换什么?

测试用例赞赏。

谢谢

0 投票
1 回答
2170 浏览

emscripten - 让 Emscripten 流式音频工作

我正在尝试让 SoLoud 音频引擎与 Emscripten 一起工作,但它的行为相当奇怪。作为一个实验,我正在播放一个 500 毫秒的正弦波。

使用 2048 个样本缓冲区,延迟大约为一秒或更长时间,输出的是 25 毫秒的正弦波。如果我将缓冲区减少到 256 个样本,延迟会好一些(仍然很差),输出会增长到 500 毫秒左右,但不完全是 500 毫秒,而且声音无论如何都不干净。这是用 Firefox 的;铬是沉默的。

emscripten/tests/sdl_audio* 测试都使用 sdl_mixer 而不是直接使用流。

所以我的问题是 - 有没有办法让流音频(以便我自己进行混合并将样本缓冲区提供给某些 API)在 emscripten 下工作?

0 投票
1 回答
950 浏览

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

0 投票
1 回答
2177 浏览

c++ - Emscripten 不从静态库链接

我有一个程序我想通过 Emscripten 进行交叉编译。所以我创建了一个静态库foo_core,现在尝试通过以下方式将其链接到 html 页面:

现在我当然会尝试找出_Z12fooiiii丢失的原因。最后做:

揭示了,该函数实际上存在于libfoo_core.js. 所以我现在很困惑,非常感谢有人向我解释为什么这不起作用。

0 投票
1 回答
1112 浏览

javascript - 如何将用python编写的函数编译为JavaScript(emscripten)?

我有一个用 python 编写的简单函数,我想将它移植到 javascript。

我已经将 python 2.7 编译成一个 .so 库,所以这不是问题。

我遇到的问题是,在我用 cython 编译程序后,函数名都被打乱了,这意味着我不知道在运行 emcc 时如何保留函数。

有人有使用 emscripten 将 python 程序编译为 js 的经验吗?

任何信息,将不胜感激。

注意:我想保留 python 的确切功能,我不想要将 python 程序转换为 javascript 的东西。

0 投票
2 回答
545 浏览

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代码中,这是个问题吗?

0 投票
2 回答
1273 浏览

javascript - Emscripten 似乎不使用 asm.js

我在 emscripten 文档中阅读了 emscripten 默认编译为 asm.js 优化,但如果我打开编译后的代码,我找不到任何“使用 asm;” 如何得到它?我应该手动添加还是编译错误?

目前我正在使用“emcc main.c -o out.html”进行编译,也尝试使用 -02 标志。

0 投票
0 回答
124 浏览

compiler-errors - Emscripten编译错误

我最近刚开始使用 emscripten,每当我尝试使用它编译某些东西时都会遇到这个错误。即使出现错误,它似乎也能正常工作。它生成的代码在我的浏览器中运行得很好,所以我不确定我是否应该担心它。

这是错误:

目前,我并不担心,因为一切正常。但我想了解它为什么会打印出错误,以及如何修复它。

0 投票
1 回答
612 浏览

webgl - 在 emscripten 中运行着色器代码

我正在尝试转换一个起诉 emscripten 的小游戏。我设法编译它而没有任何错误,但是在尝试编译/使用着色器时出现以下错误 WebGL:INVALID_OPERATION:useProgram:程序无效 WebGL:INVALID_OPERATION:getAttribLocation:程序未链接

这是着色器代码

顶点:

分段

有什么帮助吗?谢谢你。

0 投票
2 回答
931 浏览

javascript - Box2d.js 脉冲/力和初始位置

当我遇到两个问题时,我正在“玩” kripken 的 box2d。我选择了这个前叉,因为它似乎是最快和最常用的。

  1. API 在 bodyDef 上定义了位置,但你“必须”在 body 上给出它。
  2. 力量,冲动,......保持附着在身体上,产生意想不到的恒定速度。

有人以前有这些行为吗?有人有任何提示吗?

这来自一个复杂的应用程序,但我已经简化了演示: