➜ lua lua -v
Lua 5.2.3 Copyright (C) 1994-2013 Lua.org, PUC-Rio
➜ lua luajit -v
LuaJIT 2.0.3 -- Copyright (C) 2005-2014 Mike Pall. http://luajit.org/
➜ lua vim test.lua
local cjson = require "cjson"
local network = {
{name = "grauna", IP = "210.26.30.34"},
{name = "arraial", IP = "210.26.30.23"},
{name = "lua", IP = "210.26.23.12"},
{name = "derain", IP = "210.26.23.20"},
}
table.sort(network, function (a,b)
return (a.name > b.name)
end)
-- ngx.print(cjson.encode(network))
print(cjson.encode(network))
➜ lua lua test.lua
[{"name":"lua","IP":"210.26.23.12"},{"name":"grauna","IP":"210.26.30.34"},{"name":"derain","IP":"210.26.23.20"},{"name":"arraial","IP":"210.26.30.23"}]
➜ lua luajit test.lua
luajit: error loading module 'cjson' from file '/usr/local/lib/lua/5.1/cjson.so':
dlopen(/usr/local/lib/lua/5.1/cjson.so, 6): Symbol not found: _luaL_setfuncs
我刚接触 lua,我也不太明白怎么会出现这种问题;有资料说是因为 luajit based on lua5.1;但是我的 lua 编译5.1也有这个错误,