跨平台平台编译libevent源码(32位)


全部资料 下载链接,若打不开稍后点击

1.windows环境准备

在这里插入图片描述

  • 下载好的代码展示

在这里插入图片描述

2.先编译zlib,因为依赖库最少(用nmake去做动态库编译)

  • 下载地址

www.zlib.net
在这里插入图片描述

  • 总览

在这里插入图片描述
nmake是vs自带的编译行工具

  • 编译步骤

备注
①找到菜单的vs2017的x64_86交叉工具命令提示符-》编成32位
②菜单的vs2017x64本机工具-》编成64位
③vs2017的x86_64兼容-》用x86版本的编译64位的

①这里选择编译32位,选择①用x64编译成x86的
②cd到对应目录

在这里插入图片描述

③nmake /f WIN32\Makefile.msc

在这里插入图片描述

④写批处理命令bulid_zlib_vs2019.bat

@echo "start to compile zlib"
SET VS=”vs2019 x64_x86交叉编译工具的路径“//设置变量
SET OUT=C:\3rd\out\VS019_32\zlib		//设置输出的绝对路径,把Lib文件和dll文件分开存放
call %VS%   							//取变量,避免路径发生变化
cd zlib-1.2.11							//进入路径
nmake	/f win32/Makefile.msc	clean 	//编译前清零 
nmake 	/f win32/Makefile.msc			//编译
//创建路径
md %OUT%\lib
md %OUT%\bin
md %OUT%\include
copy /Y  *.lib 	%OUT%\lib				//  /Y表示不希望问题弹出来
copy /Y  *.h    %OUT%\include			//头文件放include
copy /Y *.dll	%OUT%\bin				//
copy /Y *.exe   %OUT%\bin
@echo "finished compiling zlib"
pause  //显示是否结束

⑤执行脚本

3.编译openssl

  • 下载地址

www.openssl.org/source/
在这里插入图片描述

  • 资料下载地址

http://www.ffmpeg.club/libevent.html
下载到对应libevent目录,用vs的x64_x86交叉工具安装,使用perf Configure VC-WIN32 --prefix=E:\libevent\out\vs2019_32\openssl编译,然后用nmake install安装

  • 编译安装脚本
@echo "start to compile openssl"
SET VS=”vs2019 x64_x86交叉编译工具的路径“//设置变量
SET OUT=C:\3rd\out\VS019_32\openssl		//设置输出的绝对路径,把Lib文件和dll文件分开存放
call %VS%   							//取变量,避免路径发生变化

cd C:\3rd\openssl-1.1.1
perl Configure VS-WIN32 --prefix=%OUT%
nmake clean
nmake 
nmake install 
@echo "finished openssl install"
pause

4.编译libevent

  • 下载地址:

github
github.com/libevent/libevent

  • libevent需要修改的地方

①test里面的Makefile.nmake的第6行libeay32lib和ssleay32.lib换成libssl.lib和libcrypto.lib
②test里面的Makefile.nmake的第39行: LIBS=后增加…\libevent.lib
③test里面的regress_zlib.c的第23行末尾增加regress_zlib.obj,第13行CFLAGS=后增加/I…/zlib (因为缺失zlib.h头文件,将头文件放在libevent-master这个目录里面了)
在这里插入图片描述
④开启编译zlib,也可以编译,在regress_bufferevent.c的第1382行,若添加编译zlib则定义宏定义,打开event2/的event-config.h头文件的第86行
在这里插入图片描述

  • 编译脚本
@echo "start to compile libevent"
SET VS=”vs2019 x64_x86交叉编译工具的路径“//设置变量
SET OUT=C:\3rd\out\VS019_32\libevent	//设置输出的绝对路径,把Lib文件和dll文件分开存放
call %VS%   							//取变量,避免路径发生变化
cd libevent-master
nmake /f Makefile.nmake clean
nmake /f Makefile.nmake OPENSSL_DIR=C:\3rd\out\vs2019_32\openssl
md %OUT%\lib
md %OUT%\bin
md %OUT%\include
copy /Y *.lib %OUT%\lib
xcopy /S/Y include %OUT%\include\
xcopy /S/Y WIN32-Code\nmake %OUT%\include\
copy /Y *.lib %OUT%\bin
copy /Y *.lib %OUT%\bin
@echo "finished libevent compiling install"
pause

5.linux安装libevent

在这里插入图片描述

6.填写第一个libevent

详情见柔性数组跨平台代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值