利用openssl管理证书及SSL编程第2部分:在Windows上编译 openssl
首先mingw的环境搭建,务必遵循下文:
http://blog.csdn.net/ubuntu64fan/article/details/8918808
然后:
1 编译32位openssl
1)打开:MSYS-x64 Shell(msys\1.0\bin\sh.exe)。以下操作都是在mingw64 shell中执行。
2)查看当前编译环境的位版本(32或64):
$ cat /etc/profile
在最下面看到:
...... if [ -f /local32/etc/profile.local ]; then source /local32/etc/profile.local fi
可知当前shell使用的是32位编译环境。
3)下载openssl
$ cd /local32/src
$ wget http://www.openssl.org/source/openssl-1.0.2e.tar.gz
我机器上的真实目录是:C:\DEVPACK\MinGW\local32\src
解压:
$ tar zxfh openssl-1.0.2e.tar.gz
会出现一堆警告,忽略之
使用tar zxfh openssl-1.0.2e.tar.gz 解包。原因是: + Since the release tarballs contain symlinks which MSYS cant deal with + you must use tar with the -h option to dereference the symlinks: + tar zxfh openssl-1.0.2e.tar.gz
4)编译openssl静态库和动态库
$ cd /local32/src/openssl-1.0.2e $ perl Configure mingw shared --prefix=/usr/local/win32 $ make -j 4 $ make install
编译好的结果:头文件,库文件等安装在目录 /usr/local/win32/ssl 下面,对应真实目录:
C:\DEVPACK\MinGW\msys\1.0\local\win32\ssl
2 编译64位openssl
1)打开:MSYS-x64 Shell(msys\1.0\bin\sh.exe)。以下操作都是在mingw64 shell中执行。
2)下载解压: openssl-1.0.2e.tar.gz
$ cd /local64/src
$ wget http://www.openssl.org/source/openssl-1.0.2e.tar.gz
$ tar zxfh openssl-1.0.2e.tar.gz
3)改变编译环境位数为x64 (仅对当前窗口有效):
$ source /local64/etc/profile.local
4)编译openssl静态库和动态库
$ cd openssl-1.0.2e $ perl Configure mingw64 shared --prefix=/usr/local/win64 $ make -j 4 $ make install
编译好的结果:头文件,库文件等安装在目录 /usr/local/win64/ssl 下面,对应真实目录:
C:\DEVPACK\MinGW\msys\1.0\local\win64\ssl