dcodeIO/WebAssembly つらい

なんでつらいかというと、クソだからですね。

なんでこんなパッケージを使おうと思うかと言うと、stdlibやらstdioやらの関連ヘッダーファイルをWebAssembly用に再定義してくれているからです。

ご存知の通りWebAssemblyにはmallocなどは無いというか、普通に/usr/include/とかのヘッダーをとってくるとWebAssemblyではmalloc関数が解決されずimportして使うことになるわけなんですが、そうなるとmallocの実装をどうとってくんねんみたいなお気持ちが発生しお気持ちということです。

$ npm i webassembly
$ ./node_modules/.bin/wa-compile hoge.c

とかやるとpost-installでdcodeIO謹製のビルド済みLLVMが落っこちてきてそれを使ってやっていきが開始するわけですが、libtinfo.so.5がねえって言われて死にます。クソ。

共有ライブラリにシンボリックリンクはやしてうんぬんとかやると破滅しがちなのでやりたくないし、結局自分でビルドしていたllvmツールたちにシンボリックリンクをはやすことになり…

とにかく厳しい状態になっています