一、Emscripten编译优化分为两个步骤
- 每个源文件编译成目标文件(.bc文件),通过LLVM优化
- 目标文件编译成js文件
二、Js使用库的两种方式
1. 多个bitcode直接变成js
- emcc project.bc libstuff.bc -o final.js
2. 多个bitcode先编译成一个,然后在变成js
- emcc project.bc libstuff.bc -o allproject.bc
- emcc allproject.bc -o final.js
一、Emscripten实现把C/C++文件转成wasm,wast(wasm的可读形式),llvm字节码(bc格式),ll格式(llvm字节码的可读形式)的步骤。
extern.cc文件
extern "C"
{
int add(int x, int y)
{
int a=333;
return x + y+ a;
}
int min(int x, int y)
{
return x - y;
}
}
1.转成wasm命令
emcc extern.cc -o extern.js -s EXPORTED_FUNCTIONS='["_add","_min"]' -O3 -s wasm=1
注意:这里EXPORTED_FUNCTIONS指的是导出的函数,需要和源文件里的函数名是相对应的,-O3是编译优化等级,只有这个等级生成的was