windows环境下使用apxs编译添加apache模块

windows环境下使用apxs编译添加apache模块

简介说明:本文使用mod_limitipconn模块为例。

环境:

windows7
x86系统

apache
2.4.18

目标:

在windows环境下,利用mod_limitipconn0.24源码、apxs为apache2.4.18添加mod_limitipconn模块。

分析:

limitipconn模块最新版已经支持apache2.4了。但是没有编译好的对应版本。因此需要自己动手编译模块。在windows下要实现这个目标,需要安装以下几个软件:apxs(windows版)、perl(windows版本的,这是为了可以安装apxs)、vc++6.0(要安装版的。这个是apxs编译c源码模块调用使用的。也可以使用其他的软件)。

下载地址:

apxs

http://www.apachelounge.com/download/additional/

perl(ActivePerl
)

http://www.activestate.com/activeperl/downloads

vc++6.0

要安装版。绿色版编译时出错。

步骤:

安装perl(ActivePerl),直接默认安装就好。安装完成请确认windows环境变量的path是否添加了perl的文位置。没有自动添加,请手工追加。如图:

安装vc++6.0,这个一定使用安装版的,否则编译时会报错。我的安装目录:D:\Program
Files\Microsoft Visual Studio,安装完成确认D:\Program
Files\Microsoft Visual
Studio\VC98\Bin\cl.exe,双击是否报错。(若报错,请根据报错信息修复。我的报错:mspdb60.dll文件丢失,下载该文件放到cl.exe所在目录)。并把“D:\Program
Files\Microsoft Visual Studio\VC98\Bin\”添加到环境变量path中。如图:

安装apxs:

首先说明:apache安装目录:D:\wamp\bin\apache\apache2.4.18\

运行windows的命令提示符(即cmd),并进入apxs安装包文件所在位置。运行以下命令:“perl
Configure.pl --with-apache2=D:\wamp\bin\apache\apache2.4.18--with-apache-prog=httpd.exe”。如图:

注:会生成D:\wamp\bin\apache\apache2.4.18\build\config_vars.mk文件和D:\wamp\bin\apache\apache2.4.18\bin\apxs.bat文件。

修改D:\wamp\bin\apache\apache2.4.18\build\config_vars.mk,效果如下:

CC = cl

LD = link

CPP = cl
-nologo -E

LDFLAGS =
kernel32.lib ws2_32.lib apr-1.lib aprutil-1.lib libapr-1.lib
libapriconv-1.lib libaprutil-1.lib libhttpd.lib mod_dav.lib xml.lib
/nologo /subsystem:windows /dll /machine:I386
/libpath:"D:\wamp\bin\apache\APACHE~1.18\lib"

注:cl、link是调用D:\Program
Files\Microsoft Visual
Studio\VC98\Bin\下的cl.exe、link.exe。其中LDFLAGS=...”D:\wamp\bin\apache\APACHE~1.18\lib”采用默认的就可以(”D:\wamp\bin\apache\APACHE~1.18\lib”是我的默认的。其实就是apache安装目录下的lib文件夹的目录)。若LDFLAGS项目没有更改编译模块时会报错。

在命令提示符中,运行“VCVARS32”,如图:

在windows环境变量中path,追加D:\wamp\bin\apache\apache2.4.18\bin\,如图:

在命令提示符中进入mod_limipiconn源码所在目录,并运行如下命令:

apxs -i -c -a
mod_limitipconn.c

如图:

重要说明:

会在D:\wamp\bin\apache\apache2.4.18\lib\生成mod_limitipconn.lib文件。

会在D:\wamp\bin\apache\apache2.4.18\modules\生成mod_limitipconn.so文件。

每次追加windows环境变量path下的内容,需要重新运行命令提示符才能生效(或者说才能在命令提示符中应用)。

编译时提示“windows.h”相关错误,请检查D:\wamp\bin\apache\apache2.4.18\build\config_vars.mk文件中的LDFLAGS是否修改,若已经修改,请使用安装版的vc++6.0。

涉及的文件位置罗列:

apache2.4.18安装位置:D:\wamp\bin\apache\apache2.4.18、

vc++6.0安装位置:D:\Program
Files\Microsoft Visual Studio

cl.exe、link.exe及VCVARS32
.bat所在位置:D:\Program
Files\Microsoft Visual Studio\VC98\Bin\

apxs安装后所在位置:D:\wamp\bin\apache\apache2.4.18\bin\

config_vars.mk所在位置:D:\wamp\bin\apache\apache2.4.18\build\config_vars.mk

perl安装位置:C:\Perl\

mod_limitipconn源码所在位置:D:\mod_limitipconn\

时间: 2024-10-11 01:41:51

windows环境下使用apxs编译添加apache模块的相关文章

Windows环境下log4cxx的编译及使用(转载)

1.介绍 Log4cxx是开放源代码项目Apache Logging Service的子项目之一,是Java社区著名的log4j的c++移植版,用于为C++程序提供日志功能,以便开发者对目标程序进行调试和审计.有关log4cxx的更多信息可以从Apache Loggin Service的网站http://logging.apache.org获得.当前的最新版本为0.10.0,本文内容及示例代码都是基于此版本. 2.获取软件包 可以从官方网站(http://logging.apache.org/l

Windows环境下使用VS2005编译OpenSSL

如何Windows环境下,使用VS2005编译OpenSSL,虽然这个问题在Baidu.Google上一堆,但安装中还是遇到些问题,在这里 记录下来希望能帮助大家不要在走弯路.注:我是在WinXP SP3下使用VS2005SP1下编译成功的,OpenSSL的版本是0.9.8l. http://www.cnblogs.com/moonset7/archive/2009/12/18/1627317.html by 月落上弦 一.编译OpenSSL  准备工作:下载OpenSSL源码 官方网站下载Op

在Windows环境下使用MinGW编译Qt 4.8.6

1.修改环境变量工具推荐:Rapid Environment Editor.官网:http://www.rapidee.com/ 修改前请先备份当前的环境变量.然后: (1)检查系统变量path,删除有关mingw其他版本等信息,以免与后续的mingw32-make冲突. (2)检查用户变量INCLUDE.LIB.PATH.MSDevDir和MSVCDir,删除有关\Microsoft Visual Studio\VC98的信息,因为它们会与后续的mingw32-make冲突,导致编译出错. 2

windows环境下无法引用全局安装的模块问题

问题 在node项目中,往往需要安装一些依赖的包,通常我们采取全局安装的方式,来减少一些包重复安装带来的烦恼. 但是全局安装后出现无法使用的情况,可能是你NODE_PATH没有设置或者不正确造成的. 解决方案 那么,什么是NODE_PATH呢? NODE_PATH是node为模块提供寻找路径的一个环境变量.关于node模块加载策略,可以参考这里. 那么,如何配置NODE_PATH呢? 很简单,只需要在环境变量中新添加一个名为NODE_PATH的变量,值为npm的安装目录,例如: C:\Users

windows环境下安装apache及使用apache搭建反向代理

一.配置Apache平台软件 1.下载apache软件 http://httpd.apache.org/ 从Apache官网下载windows安装版的Apache服务器了,现在分享给大家. 2.方法/步骤如下: 2.1.进入apache服务器官网http://httpd.apache.org/,这里我们以下载稳定版的httpd 2.2.29为例,点击download. 2.2.download.cgi页面,往下翻找到2.2.29版本,其中有两个下载选项 Source: httpd-2.2.29.

Windows环境下使用cygwin ndk_r9c编译FFmpeg

 一.废话 最近学习,第一步就是编译.我们需要编译FFmpag,x264,fdk_aac,一步步来.先来讲一下FFmpeg,网上说的很多都是几百年前的,我亲测完美可用 联系我可以直接评论,也可以加我QQ:11635423  二.干货  我能力有限,但是我希望我写的东西能够让更多的人能够接受.我也是刚刚接触.做一个记录,也希望能够对其他人有好处. 几个概念理解一下:不理解也没关系.用了之后再说慢慢就理解了.主要是因为我们是windows 先是cygwin下的一些概念:        unix st

Openstack 二次开发之:在windows 环境下编译Openstack-java-sdk

在windows环境下使用maven对openstack-java-sdk进行编译 编译源文件 下载源代码 git clonehttps://github.com/woorea/openstack-java-sdk.git 下载并安装gpg4win http://ftp.gpg4win.org/ 本次过程中下载的是gpg4win-2.2.2.exe 配置gpg 查看 F:\github\openstack-java-sdk>gpg --list-key gpg:C:/Users/Eric.sun

Windows环境下使用Cmake ndk编译fdk-aac

 一.废话 最近学习,第一步就是编译.我们需要编译FFmpag,x264,fdk_aac,下面是x264,网上说的很多都是几百年前的,我亲测完美可用 还是那句话 我能力有限,但是我希望我写的东西能够让更多的人能够接受.我也是刚刚接触.做一个记录,也希望能够对其他人有好处.联系我可以直接评论,也可以加我QQ:11635423  二.干货  准备:1.fdk_aac的源码  git clone https://android.googlesource.com/platform/external/aa

Windows环境下使用cygwin ndk_r9c编译x264

 一.废话 最近学习,第一步就是编译.我们需要编译FFmpag,x264,fdk_aac,下面是x264,网上说的很多都是几百年前的,我亲测完美可用 还是那句话 我能力有限,但是我希望我写的东西能够让更多的人能够接受.我也是刚刚接触.做一个记录,也希望能够对其他人有好处.联系我可以直接评论,也可以加我QQ:11635423  二.干货  准备:1.x264的源码 2.cygwin下载,安装,这个网上基本都有.我不讲太多.git cygdrive bash make 这几个都需要下载 3.ndk我