msys 编译 openresty 记录(失败),


自己编译过程的记录,没有成功。

不建议用msys编译,坑太多。


1. 下载pcre,解压


./configure --prefix=/mingw --enable-pcre16 --enable-pcre32 --enable-unicode-properties --enable-newline-is-any

修改Makefile

这2个设置为空

VISIBILITY_CFLAGS = 
VISIBILITY_CXXFLAGS = 


make

make install


cd /mingw/include
cp pcreposix.h regex.h
cd /mingw/lib
cp libpcreposix.a libregex.a
cp libpcreposix.dll.a libregex.dll.a
cp libpcreposix.a libgnurx.a
cp libpcreposix.dll.a libgnurx.dll.a

2. 下载openresty,解压


修改luajit为static

修改cjson redis rds 3个项目的makefile,给cc编译加上-lluajit-5.1

或者不改为static,但cc编译加上

../luajit-root/usr/local/openresty/luajit/lib/luajit-5.1.dll 


修改rds所有文件的u_char到char

修改luajit/lib_package.c lj_clib.c, 4个GET_MODULE_HANDLE的define注释掉

//#ifndef GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS
//#define GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS 4
//#define GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT2
BOOL WINAPI GetModuleHandleExA(DWORD, LPCSTR, HMODULE*);
//#endif


./configure --with-luajit --with-pcre=/mingw --with-zlib=/usr --with-openssl=/usr --with-cc-opt="-D FD_SETSIZE=4096 -D __NO_MINGW_LFS -D __WATCOMC__"


修改nginx下的\build\nginx-1.4.3\objs\Makefile

搜索ssl,/usr/.openssl/include改成/usr/include/openssl,/usr/.openssl/lib改成/usr/lib/openssl

注释掉/usr/.openssl/include/openssl/ssl.h: objs/Makefile和下面一起的几行

搜索pcre,/usr/include/pcre.h改成/mingw/include/pcre.h,lib也要

搜索zlib,改成/mingw/lib


 

复制libluajit-5.1.a到系统lib目录

make


失败。。。




相关内容

    暂无相关文章