工作中要用的OpenSSL库,记录下编译方法。
从http://www.openssl.org/下载源代码,我下的版本是1.0.0c。
编译需要perl支持,从这里下载perl,http://downloads.activestate.com/ActivePerl/Windows/5.8/ActivePerl-5.8.8.822-MSWin32-x86-280952.zip,安装之后,可以开始编译了。
解压源代码,运行VS2005的命令行,进入源代码目录。
先配置,输入命令:
perl configure VC-WIN32
输入命令ms/do_ms,接着nmake -f ms/ntdll.mak,就开始编译了。
结束后,编译出的文件都在out32dll目录下面,编译出来的文件有很多,我们需要的有两个dll和对应的lib文件。
libeay32.dll,libeay32.lib,ssleay32.dll,ssleay32.lib
可以单独把include目录和这几个目标文件拷出来,开发基本上只需要这些。
好了,编译完毕,收工。
基本使用,这里有一篇文章,适合入门
http://www.ibm.com/developerworks/cn/linux/l-openssl.html
写个测试程序
#include <openssl/bio.h>
#include <openssl/ssl.h>
#include <openssl/err.h>
#pragma comment(lib,"libeay32.lib")
#pragma comment(lib,"ssleay32.lib")
int main(int argc,char** argv)
{
BIO* pBio;
pBio = BIO_new_connect("www.google.com:80");
if(pBio == NULL){
printf("Failed!");
}
if(BIO_do_connect(pBio) <= 0){
printf("Connect Failed!/n");
}else{
printf("Connect Successful!/n");
}
getchar();
return 0;
}