平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“Lua cjson模块编译笔记及错误解决做法”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际采用顺序,把思路、关键写法和容易踩坑的地方讲清楚,便于大家直接对照操作。
采用文档:(链接已移除)
下载地址:(链接已移除)
编译时可能会报错,要修改Makefile文件:
我下载的是lua jit版本,改了以下#部分内容
复制代码 代码如下所示:
#LUA_INCLUDE_DIR = $(PREFIX)/include
LUA_INCLUDE_DIR = $(PREFIX)/include/luajit-2.0/
#LUA_CMODULE_DIR = $(PREFIX)/lib/lua/$(LUA_VERSION)
LUA_CMODULE_DIR = $(PREFIX)/lib
#LUA_MODULE_DIR = $(PREFIX)/share/lua/$(LUA_VERSION)
LUA_MODULE_DIR = $(PREFIX)/share/lua/luajit-2.0.3
理解这一步时,注意,最后复制的路径,即将编译出来的so文件复制到lua的lib目录下,我设置的是以下路径
/usr/local/lib/lua/5.1/cjson.so