cd /root/Download/
wget http://luajit.org/download/LuaJIT-2.0.4.tar.gz
tar zxvf LuaJIT-2.0.4.tar.gz
cd /root/Downloads/LuaJIT-2.0.4
make && make install PREFIX=/usr/local/luajit-2.0.4
2. 设置环境变量:
123
# tell nginx's build system where to find LuaJIT 2.0:
export LUAJIT_LIB=/usr/local/luajit-2.0.4/lib
export LUAJIT_INC=/usr/local/luajit-2.0.4/include/luajit-2.0
cd /root/Download/
wget --no-check-certificate https://github.com/openresty/lua-nginx-module/archive/v0.9.19.tar.gz
tar zxvf v0.9.19.tar.gz
cd /usr/local/tengine/sbin/
./dso_tool --add-module=/root/Downloads/LuaJIT-2.0.4
wget http://www.canonware.com/download/jemalloc/jemalloc-3.6.0.tar.bz2
tar xjf jemalloc-3.6.0.tar.bz2
cd jemalloc-3.6.0
./configure
make && make install
echo '/usr/local/lib' > /etc/ld.so.conf.d/local.conf
ldconfig
参数说明:由于Pcre是通过yum安装的,不用使用--with-pcre=/path/to/ 指定。
lua是手动安装的需要配置参数
--with-http_lua_module
--with-luajit-lib=/usr/local/luagit-2.0.4/lib/ --with-luajit-inc=/usr/local/luagit-2.0.4/include/luajit-2.0/
--prefix安装的目录
作用:不指定prefix,则可执行文件默认放在/usr/local/bin,库文件默认在/usr/local/lib,配置文件在/usr/local/etc,其他资源文件放在/usr/local/share。若要卸载这个程序,要么在原来的make目录下执行make uninstall(前提是make文件指定过uninstall),要么去上述默认目录里把相关的文件夹一个个的删掉。但是,对于指定了prefix的目录的好处是卸载软件或者移植软件。当某个软件不再需要时,只须简单删除该文件安装目录,就可以把软件卸载干净;移植软件只需要拷贝整个目录到另外一个机器即可(相同的操作系统及环境依赖)。
--with-ld-opt
其中的 --with-ld-opt=-Wl,-rpath,/usr/local/lib:/opt/openresty/luajit/lib 意思是:这是链接器选项,目的是把/usr/loca/lib和/opt/openresty/luajit/lib这两个路径添加进nginx可执行文件的RPATH头重,这样在启动的时候,系统就可以找到正确的动态链接库文件。
若不使用该参数指定动态的链接库,试着使用 ./nginx 启动tengine,如果运气不好的话,可能遇到如下错误:
cannot open shared object file: No such file or directory
这是什么情况呢?可以使用ldd命令来查看:
ldd /usr/local/tengine-2.1.0/sbin/nginx
会出现xxxx-xxxx.so => not found
此类问题通常使用ldconfig命令就能解决,例如本例有可能出现的
libluajit-<VERSION>.so => not found
我们使用如下命令:(由于我们默认安装libluagit动态链接库默认安装至/usr/local/lib)