CentOS7とAmazon linux2015.03上でやりました。
libxlをnode.jsで使うためのlibxlモジュールがあります。素晴らしい!
npm install libxl
でさっくりといけます。ただしnpm@3だとエラーが出る。
それと、gcc-c++を入れないとコンパイル出来ないのでg++エラーが出る場合は
yum install gcc-c++
インストールすると自動的にlibxlもダウンロードしてくる。まあ、モジュールのコンパイルに必要だしね。
既にインストールされているならやり方はドキュメントに書いてあります。
実行する場合はlibxl.soがある場所をLD_LIBRARY_PATHを設定してあげる必要がある。自動でインストールされた場合 node_modules/libxl/deps/libxl/lib64に入っています。exportしてもいいけど下記の様にしても動きます。
LD_LIBRARY_PATH="`pwd`/node_modules/libxl/deps/libxl/lib64:$LD_LIBRARY_PATH" node demo.js
みたいな。既に使っているlibxl.soが/usr/local/lib64に入っていたら下記の様にすればいいし、
LD_LIBRARY_PATH="/usr/local/lib64:$LD_LIBRARY_PATH" node demo.js
一々LD_LIBRARY_PATHを書くのが面倒なら/usr/lib64
にlibxl.soをコピーしちゃってもいけます。
ライセンスをもっているなら、下記の様にすれば認証通ります。めんどうなら、コンパイル時にごにょごにょっとやればいいらしいです。ドキュメントに書いてあります。
var xl = require('libxl');
var book = new xl.Book(xl.BOOK_TYPE_XLSX);
book.setKey("hogehogehogehoge", "linux-xxxxxxxxxxxxxxxxxxxxxxxxx");
node.jsでエクセルファイル作れて楽しいです。