c是一種古老而又經典的語言,js是一種流行的解釋語言,用於各種不同的場合,在客戶端、服務器端都有非常多的用武之地。
emscripten是一個可以將C代碼編譯成WebAssembly的神奇工具,而且還能實現js對c代碼的調用。
1、emscripten的安裝
1)從github下載emsdk
下載地址:https://github.com/emscripten-core/emsdk
選擇"Clone or download => Download ZIP" 即下載 emsdk-master.zip,解壓到如:c:\emsdk-master
2) 安裝emsdk
進入上一步解壓目錄c:\emsdk-master,依次執行:
a) emsdk install latest
b) emsdk activate latest
c) emsdk_env.bat
更多信息參見:https://emscripten.org/docs/getting_started/downloads.html
3)編寫C代碼,命名爲add.c
#include <emscripten.h>
// 實現一個加法
EMSCRIPTEN_KEEPALIVE
int add(int a,int b)
{
return a+b;
}
4) 編譯C代碼,生成add.js 和 add.wasm
emcc add.c -o add.js -s
5) 編寫調用代碼,命名爲:test.js
// 引用模塊
var add = require('add.js');
add.onRuntimeInitialized = function() {
console.log(add._add(1,1))
}
6) 執行測試
這裏我們,採用後端框架nodejs來執行test.js文件,(Nodejs的安裝包下載:https://nodejs.org/zh-cn/download/,選擇windows64位.msi,下載後執行缺省安裝
) ,命令如下:
c:\emsdk-master>node test.js
輸出結果:
完結:至此,emscripten的入門就完成了。