准备工作
要在 Microsoft Win32??平台上编译Nginx你需要:
- Microsoft Visual C compiler. Microsoft Visual Studio??8 and 10 are known to work.(用来编译)
- MSYS.(执行配置脚本)
- Perl, if you want to build OpenSSL??and nginx with SSL support. For example?ActivePerl?or?Strawberry Perl.(注意这里不能使用MSYS的perl)
- Mercurial?client.(通过HG下载最新源码)
- PCRE,?zlib?and?OpenSSL?libraries sources.(PCRE用来重写url,zlib支持页面压缩,这里编译rtmp模块,必须编译出openssl)
- win32版nginx-rtmp-module模块源代码
编译步骤
在开始之前,你需要将Perl,Mercurial,MSYS bin目录加入PATH环境变量,也就是打开cmd,输入perl,hg,bash不会提示找不到命令.运行vcvarsall.bat或者叫Visual Studio命令提示(2010).
- 敲入bash,进入msys的环境
- 从hg.nginx.org检出最新的Nginx源代码
1hg clone http : //hg.nginx.org/nginx - Create a build and lib directories, and unpack zlib, PCRE and OpenSSL libraries sources into lib directory: 创建一个编译和库目录,并且解压zlib,PCRE,OpenSSL,git回win32分支的nginx-rtmp-module模块
123456mkdir objs / lib - pcd objs / libtar - xzf pcre - 8.32.tar.gztar - xzf zlib - 1.2.8.tar.gztar - xzf openssl - 1.0.1e.tar.gzunzip nginx - rtmp - module - win32 . zip (也可使用 git ) - 回到nginx主目录,运行配置脚本
1234567891011auto / configure -- with - cc = cl -- builddir = objs -- prefix =-- 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-- http - fastcgi - temp - path = temp / fastcgi_temp-- http - scgi - temp - path = temp / scgi_temp-- http - uwsgi - temp - path = temp / uwsgi_temp-- with - cc - opt = - DFD_SETSIZE = 1024 -- with - pcre = objs / lib / pcre - 8.32-- with - zlib = objs / lib / zlib - 1.2.8 -- with - openssl = objs / lib / openssl - 1.0.1e-- with - select_module -- with - http_ssl_module -- add - module = objs / lib / nginx - rtmp - module - win32 - 编译
1nmake - f objs / Makefile
成功后会在objs目录内生成nginx.exe文件,创建conf,logs,temp,tmp目录,将nginx-rtmp-module-win32/test/nginx.conf拷贝到conf目录,运行nginx.exe
使用任意rtmp客户端测试,默认app为myapp的直播应用,请参考官方配置开启record,vod等功能.
注意事项:
由于原作者是在*UNIX环境开发,使用了部分UNIX系统调用,部分功能在windows上暂时无法实现,比如vod 为mp4文件,exec ffmpeg来切片.但作为直播流,点播flv文件,在线录制是没有问题的.
下载撸主的编译版本:
nginx 1.7.10
nginx-rtmp-module 1.1.6
https://github.com/illuspas/nginx-rtmp-win32?
原创文章,转载请注明: 转载自贝壳博客
本文链接地址: 编译windows版nginx-rtmp-module