windows下vc编译和debug nginx

总体来说,各个步骤以及版本参考官方文档http://nginx.org/en/docs/howto_build_on_win32.html一点没错,有些细节没说清楚。

To build nginx:

  • Start MSYS bash.
  • Check out nginx sources from the hg.nginx.org repository. For example: 必须使用源代码仓库中的版本,tar.gz发行包中的虽然是源码,但是不包含windows平台库,否则会提示缺少windows相关头文件
    hg clone http://hg.nginx.org/nginx
    
  • Create a build and lib directories, and unpack zlib, PCRE and OpenSSL libraries sources into lib directory:
    mkdir objs
    mkdir objs/lib
    cd objs/lib
    tar -xzf ../../pcre-8.41.tar.gz
    tar -xzf ../../zlib-1.2.11.tar.gz
    tar -xzf ../../openssl-1.0.2n.tar.gz
    
  • Run configure script:  windows下中文简体编译的时候,先将ssl/bad_dtls_test.c编码格式改为unicode或者gb2312,否则默认警告视为错误会编译出错
    auto/configure     --with-cc=cl     --with-debug     --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.41     --with-zlib=objs/lib/zlib-1.2.11     --with-openssl=objs/lib/openssl-1.0.2n     --with-openssl-opt=no-asm     --with-select_module     --with-http_ssl_module
    
  • Run make: 在vs命令行下执行,而不是msys窗口
    nmake
    

nginx.exe生成后,双击启动的时候立刻就消失了。从cmd打开执行,可以知道是少了error/conf/temp等目录所致,自己看提示应该可以解决。

参考:

http://nginx.org/en/docs/howto_build_on_win32.html

https://blog.csdn.net/i348018533/article/details/51701865

https://blog.csdn.net/hard_cold/article/details/13989337

http://www.xuebuyuan.com/739815.html

https://www.itsvse.com/thread-2784-1-1.html

https://blog.csdn.net/a923751813/article/details/50511007

https://www.ruby-forum.com/topic/6875190

后面有时间开始debug继续出。

原文地址:https://www.cnblogs.com/zhjh256/p/9273061.html

时间: 2024-10-26 10:24:04

windows下vc编译和debug nginx的相关文章

Windows下VC编译OpenDDS

OpenDDS是一个OMG组织DDS标准的C++开源实现,OpenDDS同时也提供Java支持.OpenDDS依赖ACE抽象层来提供不同平台的兼容性,同时也依赖于TAO(例如TAO的IDL编译器).当前OpenDDS有ociweb ObjectComputing维护,官方网站http://www.opendds.org/.目前OpenDDS支持的平台有Windows,Linux family,Android,VxWorks等,可用的编译器包括VC,gcc,QNX gcc等. 1. OpenDDS

ACE在windows下的编译及配置(VS2010)

ACE在windows下的编译及配置(VS2010) 分类:             -[小西南]-              2013-08-06 16:17     2354人阅读     评论(6)     收藏     举报 目录(?)[+] 1 下载ACE 2 创建ACE的配置文件 3 编译ACE库 4 可为ACE目录设置环境变量 5 VS2010 ACE配置 6 测试操作是否成功 系统:win7 开发环境:Visual Studio 10 ACE版本:ACE-6.2.0 参考了很多师

【FFmpeg】Windows下FFmpeg编译

转自:http://www.cnblogs.com/dwdxdy/p/3625766.html 由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类似Linux的编译环境.本文主要记录Windows下FFmpeg编译的过程. 1.资源准备 准备编译过程所需的软件工具和源代码. (1). MinGW-MSYS Bundle http://sourcef

图文介绍windows下实现编译ffmpeg工程的详细步骤

本文来自:http://www.cuplayer.com/player/PlayerCode/FFmpeg/2014/0706/1401.html 图文介绍windows下实现编译ffmpeg工程的详细步骤: 1.搭建 MinGW 的编译环境 下载yasm,地址:http://yasm.tortall.net/Download.html 改名为yasm.exe放到C:\WINDOWS\system32 或者 C:\MinGW\msys\1.0\bin文件夹下. 下载 mingw-get-inst

windows下rabbitmq-c编译(带openssl、无需MinGW)

因为项目原因,需要使用到rabbitmq的c客户端库.首先,参见上一篇windows下openssl编译,如果已经使用cmake编译过了,则先delete cache(File-Delete Cache),否则原来的cmake缓存都在了,将仍然会出现原来的错误. 依次点击configire.generate,可以生成vs sln.如下: 最后使用VS即可生成rabbitmq.4.dll,如下: 测试自带的例子: D:\RabbitMQ Server\rabbitmq_server-3.6.5\s

Windows 下VC++6.0制作、使用动态库和静态库

Windows 下VC++6.0制作.使用动态库和静态库 一.VC++6.0制作.使用静态库 静态库制作 1.如图一在VC++6.0中new一个的为win32 static library工程并新建一个.cpp和一个.h(C++header file)文件 2..cpp程序直接照老师给的打,注意这里需要改错,去掉(long) 3. .h文件需要自己编写格式如下.以head.h为例 #ifndef _HEAD_H_ #define _HEAD_H_ unsigned long unsgn_pow(

Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)

时间:2018年10月22日,学习任何物事都有个探索过程.欢迎留言探讨. 在Qt程序中,添加python进行混合编程,可以使用Python API,但交互起来很麻烦,不友好.网上推荐使用PythonQt框架. 强调下: PythonQt,方便Qt C++程序员,将python引入项目 PyQt PySide,给python程序员,将Qt界面引入项目 本机环境: 1.win7 64 旗舰版 2.Qt 5.11.2(MSVC 2015,32 bit) 3.Python 3.7.0 (32-bit)

Mac平台下的Qt程序在Windows下执行编译运行出现的中文乱码问题

Mac平台下的Qt程序在Windows下执行编译运行时,QString::asprintf()部分会出现的中文乱码问题,之前已经使用QStringLiteral宏解决了一个中文乱码问题: 但是此种情形单凭QStringLiteral宏解决不了. 原因: mac下采用MinGW编译,在Windows下可能是MinGW,也可能是MSV2017等VS编译器编译.如果win平台下是MinGW编译,在mac下写好的程序在win平台下运行不会出现乱码: 如果win下是MSV2017编译就会出现中文乱码,需要

Windows下wxWidgets编译错误的解决方法

Windows下wxWidgets编译错误的解决方法 转自 https://www.jianshu.com/p/b89d205f2cec 错误提示:d:\develop\audacity\wxwidgets-3.1.1\include\wx\platform.h(148): fatal error C1083: 无法打开包括文件: “wx/setup.h”: No such file or directory 解决方法:1.到D:\develop\audacity\wxWidgets-3.1.1