Nginx + chunkin for windows编译指南

来源:互联网 发布:软件测试个人职业规划 编辑:程序博客网 时间:2024/06/16 08:00
折腾了两周,Nginx + chunkin for windows的编译终于完成,记述如下.
1, 官方有nginx for windows的编译指南,但是不太详细,而且看来也不太对.
2,但是还是可以按着官方的步骤一步步来,然后略加修改.
3,按着官方指南,下载各种必要的第三方软件和chunkin模块不提.注意,这里只要源代码即可.我这里都是手动下载解压,而不是像官方指南说的那样,去msys里面操作.
4,进入msys,先用mount命令把windows目录挂到msys下面,然后配置,我的配置命令字符串是:
    auto/configure --with-cc=cl --builddir=objs --prefix= --crossbuild=win32 \
 --conf-path=conf/nginx.conf --pid-path=logs/nginx.pid --http-log-path=logs/access.log --error-log-path=logs/error.log --sbin-path=nginx.exe --http-client-body-temp-path=temp/client_body_temp \
 --http-proxy-temp-path=temp/proxy_temp  --with-cc-opt=-DFD_SETSIZE=4096 \
 --with-pcre=../pcre-8.30 --with-zlib=../zlib-1.2.3 --with-openssl=../openssl-1.0.0g --with-select_module --with-http_ssl_module --with-ipv6 --add-module=../agentzh-chunkin-nginx-module-ddc0dd5 
配置一般都没有什么问题,注意一点是 --prefix=  一般情况下不要给它赋值,否则运行的时候各种路径找不到.
5,我用的是VC2008 express,所以编译的有几个问题
    chunkin模块里面 off_t 赋值给 size_t的问题: 我找到源代码,直接给 ( size_t) 了,等有时间了我要去看看源代码,不知道这样强制转换有没有问题.
   chunkin里面各种的缺乏 nginx_conf.h,我看了自动生成的makefile文件,有 -Yunginx_conf.h ,所以多半是chunkin搞错了,所以用直接加上 #include "nginx_conf.h"
   stdint.h  我到minggw的include目录下面找到了这个,丢到vc的include目录下,结果编译的时候有些警告,都是MAX_SIZE重定义的问题.不知道是我的问题(64位的机器上跑32位的vc2008),希望这个问题不到.
6,对了,上面的编译是退出msys知道在命令行按 nmake -f objs/makefile
7,nmake install 是吧,不成功,看了看 makefile,其实nmake install任务就是把各种文件目录设置好,看各种命令,都是for unix的,windows下面能执行成功才怪. 自己动手吧.
8,测试一下,貌似我做成了.
唯一的隐患是 off_t  cast to size_t ,这个等我有时间了看看源代码再看怎么做.
原创粉丝点击