这是任务:
我想运行由animate().translationXBy()
.js
文件创建的Emscripten
文件,来自另一个.cpp
文件。
即:我有.js
个文件,只显示文字ping.cpp
。我使用Emscripten创建"ping"
要执行此操作,我键入ping.js
,此处为 - em++ ping.cpp
。
现在我可以使用ping.js
运行它,但我希望它从我的第二个node ping.js
文件运行,该文件名为.js
,我无法理解应该如何操作。因为ping.js没有显示" ping"的主要功能。我可以从另一个.js文件或例如.html文件中调用它,而不是它有68500行代码。
那么,我有没有机会从init.js运行ping.js?
答案 0 :(得分:0)
您可能应该在HTML文件中加载带有脚本标记的ping.js文件,就像任何其他脚本一样。诀窍是确保您使用您要加载的其他脚本可以使用的任何功能。为此,您需要设置EXPORTED_FUNCTIONS编译标志以指示要保留的函数名称。具体地
em++ -s EXPORTED_FUNCTIONS="['_ping']" ping.cpp -o ping.js
请注意,需要在函数名称前添加下划线('_')以补偿名称重整。
在要使用ping的其他JS文件中,需要进行设置。确保首先加载编译的脚本,然后执行:
ping = Module.cwrap('ping', 'null', ['string']);
这将允许你使用ping,假设它有一个void返回类型(因此为null)和一个c样式的字符串参数(因此是['string'])。
如果您确实想从其他JavaScript文件加载它,请参阅以下答案: How do I include a JavaScript file in another JavaScript file?