Luaの環境を構築してみる
はじめに
nginxの設定が〜みたいな話をしていたら、そりゃluaで書くんでしょみたいな煽りをされたので、 ひとまず開発環境を構築してみることにします。
環境導入
homebrewが導入済みならば、bomebrewから一発です。 パッケージ管理ツールであるluarocksも入れておきます。
$ brew install lua $ brew install luarocks $ mkdir ~/.luarocks $ luarocks path >> ~/.zshrc
3行目でユーザー環境でライブラリ等をインストールするディレクトリを作成しています。
4行目で環境変数を追加しています。 私はzshを使っているためzshrcに記載しましたが、使っているシェルに応じて対象ファイルを変更してください。
ライブラリ(CJSON)の導入
Lua上でJSONを扱うライブラリであるCJSONとファイルシステムを扱うLuaFileSystemを導入し、動作を確認してみます。
$ luarocks install --local lua-cjson $ luarocks install --local luafilesystem
main.lua
local json = require 'cjson' local lfs = require 'lfs' local doc_path = "./" local result local file local text local val for filename in lfs.dir(doc_path) do result = string.find(filename,"^.*json$") if result ~= nill then file = io.open(filename,"r"); io.input(file); text = io.read() val = json.decode(text) io.close(file) end end print("JSON " .. text) print("val.hello is " ..val.hello)
helloWorld.json
{ "hello":"world"}
動作結果
$ lua ./main.lua JSON { "hello":"world"} val.hello is world
まとめ
環境導入までは問題なく行えました。Windows環境でも試したかったのですが、 cjsonの導入でCコンパイラ周りでハマってしまいました。 ひとまずは今回構築した環境で進めていきたいと思います。