OpenSSL+zlib+libssh2编译(windows)

由于项目需要,需要在windows上构建sftp的客户端,索性把这三个东西集成到windows的解决方案中。

OpenSLL编译

1.需要安装perl环境,去ActivePerl官网上下载ActivePerl,该文档撰写时使用的是5.8.8_x64版本;安装完成后,在cmd命令行中输入perl --version会显示当前的版本,否则需要将perl.exe所在的路径添加到系统的PATH环境变量中;需要注意的是,如果系统中有多个perl,那么需要将ActivePerl的环境变量放在第一个(MinGW的默写版本不能正确执行脚本)。

2.OpenSSL官网上下载源码包,建议使用0.9.8版本,本文档使用openssl-0.9.8zh.tar.gz版本,解压到本机目录中,建议路径名中不要包含中文名称;

3.配置&编译OpenSSL

  1. 进入openssl源码目录 cd /d D:\vobs\lib\openssl-0.9.8zh\
  2. 执行 perl Configure VC-WIN32
  3. 执行 ms\do_ms
  4. 调用VC环境变量设置call "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"
  5. 执行 nmake -f ms\ntdll.mak

4.执行正确后,将会在openssl根目录的out32dll中生成一堆exedlllib;其中libeay32.libssleay32.lib是编译时需要的lib文件,libeay32.dllssleay32.dll是运行时需要的动态链接库文件,将其拷贝到所需要的目录下即可;

5.按照上述步骤编译出来的是opensslRelease版本,若编译Debug版本,需要将步骤3.c中的ms\do_ms.bat修改一下,原来的第23行:

perl util\mk1mf.plno-asm VC-WIN32 >ms\nt.mak
perl util\mk1mf.pldll no-asm VC-WIN32 >ms\ntdll.mak

改为

perl util\mk1mf.plno-asm debug VC-WIN32>ms\nt.mak
perl util\mk1mf.pldll no-asm debug VC-WIN32 >ms\ntdll.mak

zlib编译

1.去官网下载zlib的源代码包,本文档采用的是1.2.8;解压至本机硬盘;

2.配置&编译zlib

  1. 进入zlib源码目录 cd /d D:\vobs\lib\zlib-1.2.8\contrib\masmx86
  2. 执行 bld_ml32.bat
  3. 进入zlib源码目录 cd ..\vstudio\vc9
  4. 执行 vcbuild /rebuild zlibvc.vcproj "Debug|Win32"

3.全部执行正确后,将会在zlib-1.2.8\contrib\vstudio\vc9\x86\ZlibDllDebug\目录下生成zlibwapi.libzlibwapi.dll将其拷贝至所需目录下

libssh2编译

1.去官网下载libssh2的源代码包,本文档采用的是1.6.0;解压至本机硬盘;

2.编辑libssh2根目录下win32\config.mk文件,指定openssl以及zlib的相关信息;

3.libssh2根目录下执行nmake-f NMakefile

4.执行成功后在libssh2根目录下生成libssh2.liblibssh2.dll,同样的将其拷贝到所需目录下;

linux下进行libssh2编译时,如果需要调试信息,即debug版本时,需要在执行configure时加上--enable-debug的选项




  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值