OSX で Lua モジュールをロードしようとすると、次のエラーが表示されます。
lua: level1.lua:1: module 'libexpand_luaLib' not found:
no field package.preload['libexpand_luaLib']
no file './libexpand_luaLib.lua'
no file '/opt/local/share/lua/5.1/libexpand_luaLib.lua'
no file '/opt/local/share/lua/5.1/libexpand_luaLib/init.lua'
no file '/opt/local/lib/lua/5.1/libexpand_luaLib.lua'
no file '/opt/local/lib/lua/5.1/libexpand_luaLib/init.lua'
no file './libexpand_luaLib.so'
no file '/opt/local/lib/lua/5.1/libexpand_luaLib.so'
no file '/opt/local/lib/lua/5.1/loadall.so'
stack traceback:
[C]: in function 'require'
level1.lua:1: in main chunk
[C]: ?
lua インタープリターは、.dylib ファイルではなく、.so ファイルをロードしようとしています。.dylib は .so に相当する (わずかな変更を加えた) OSX であるという印象を受けました。したがって、Lua インタープリターは .dylib ファイルを探していると思います。
私のライブラリを OSX 上で .so にコンパイルしようとするべきですか?