2007年9月6日星期四

Windows下Openssl安装以及编程

Windows下Openssl安装以及编程

必备条件:

1、安装VC++ 6.0

2、下载ActivePerl-5.8.0.806-MSWin32-x86并安装:

http://www.sogoz.info/down.asp?id=3683&no=1

3、下载 openssl0.98并解压。

http://www.openssl.org/source/openssl-0.9.8.tar.gz

安装步骤:完全可以参照openssl目录下的install.win32

1perl Configure VC-WIN32

如不成功会有明显提示

2ms\do_ms

推荐使用这种方式

另外两种方式 如果使用也必须保证本机有编译器才能使用。

:ms\do_masm (默认vc 自带的编译器;也也以自己下载安装)

:ms\do_nasm (需要自己下载)

3DOS窗口下转到【Microsoft Visual Studio\VC98\bin目录下执行 vcvars32.bat 以配置环境变量。

4、跳到openssl目录下,执行:

nmake -f ms\ntdll.mak

如果编译成功,最后的输出都在out32dll目录下:包括可执行文件、两个dll和两个lib文件: libeay32.dll, libeay32.lib, ssleay32.dll, ssleay32.lib

注意:在运行第五步时,cl编译器会抱怨说.\crypto\des\enc_read.c文件的read是The POSIX name for this item is deprecated(不被推荐的),建议使用_read。呵呵,我可不想将OpenSSL中的所有的read函数修改为_read。再看cl的错误代码 error C2220,于是上MSDN上查找:
warning treated as error - no object file generated
/WX tells the compiler to treat all warnings as errors. Since an error occurred, no object or executable file was generated.
是由于设置了/WX选项,将所有的警告都作为错误对待,所以。。。




编程初步:

1、 打开VCTools-Options-Directores,在Include files中增加【openssl-0.9.8\inc32目录;在Libray files中增加【openssl-0.9.8\out32dll

2、 在源程序中包含以下三个头文件并加入LIB

#include
#include

#include

#pragma comment(lib, "libeay32.lib")

#pragma comment(lib, "ssleay32.lib")

3、 参考源码开始编程:http://www.kennethballard.com/Download/intro-openssl.zip

没有评论: