Building openresty1.7.10.1 with luajit on windows using Cygwin, 在windows下用Cygwin下编译带Luajit的openresty

(heeroz原创 )First install 32bit cygwin. 

Install packet: openssl zlib-dev pcre gcc-core perl readline

openresty没有对Cygwin做兼容,我们需要自己来修改文件

Open bundle\lua-cjson and lua-rds-parser and  lua-redis-parser three folder's Makefile for edit, Add those lines before “## ..... (Macports)”

bundle\lua-cjson的,lua-rds-parser的,lua-redis-parser的Makefile里,“## ***OSX (Macports)”上面加入:

ifeq ($(OS),Windows_NT)
  LDFLAGS2 += -L../luajit-root/usr/local/openresty/luajit -lcyglua51
endif

change 

$(CC) $(LDFLAGS) -o $@ $^

(cjson may be "$(CC) $(LDFLAGS) $(CJSON_LDFLAGS) -o $@ $(OBJS)")

to

$(CC) $(LDFLAGS) -o $@ $^ $(LDFLAGS2)

(cjson may be "$(CC) $(LDFLAGS) $(CJSON_LDFLAGS) -o $@ $(OBJS) $(LDFLAGS2)")

Then run:

./configure --without-select_module --with-luajit
let ./configure can found your luajit:
mv ./build/luajit-root/usr/local/openresty/luajit/include/luajit-2.1 /usr/local/include
cp ./build/LuaJIT-2.1-20150223/src/cyglua51.dll /lib/libluajit-5.1.a
./configure --without-select_module --with-luajit (must do this again)

LuaJIT-2.1-20150223 my be wrong dir name, you need press tab after LuaJIT-2.1-

LuaJIT-2.1-20150223目录名不一定一样,你需要在LuaJIT-2.1-文字后直接按Tab换成正确的目录。

let make can link your luajit:
cp ./build/LuaJIT-2.1-20150223/src/cyglua51.dll ./build/luajit-root/usr/local/openresty/luajit
make -j8
make install DESTDIR=/usr2
cp ./build/LuaJIT-2.1-20150223/src/cyglua51.dll /usr2/usr/local/openresty/nginx/sbin/

All will be ok. You can find openresty in /usr2/usr/local/ folder.

Also the ffi may be a problem, because under cygwin, -E can not be exported function symbols, i have discussed this issue with the author Agentzh, may be next version can solve this problem (Already fixed in 1.4.3.9).

另外Cygwin编译的使用jit的ffi可能有问题,因为cygwin下-E无法导出函数符号,春哥已生成补丁,预估以后版本可以解决(1.4.3.9已解决)。

我的主页:

http://www.heerozh.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值