之前一直在用1.0.2o,现在1.1.1后开始支持国密算法了 ,包括对中国SM2/SM3/SM4算法的支持。早在1.1.1刚发布没多久就已经尝鲜了,但是由于其他工作原因没能继续研究,现在出了1.1.1a了,编译方法和1.1.1是一样的,比之前编译的方法简便太多了。
1.运行vcvars32.bat 目的 将VS的路径添加到环境变量
2.下载Perl和NASM 并全部添加到环境变量
3.VS命令(注意区分 32和64)行切换到 openssl 目录
4.perl Configure VC-WIN32 no-shared no-asm no-tests --debug -D_WIN32_WINNT=0x0501 --prefix=d:\openssllib 中间参数可选 no-shared 为静态库 否则为动态库
5.nmake
6.nmake install
nmake test 是测试
问题 : 1.如出现警告视为错误。在步骤4后,将nmake中的W3改为W0,再nmake
2. U1077 link 返回代码0x1 将命令行换成生成的对象位数如32位命令行
3. U1077 返回代码0x2 禁用IPV6或者 命令行中增加 VC-WIN32 -DOPENSSL_USE_IPV6=0
4.清除编译 nmake clean
以上在Win10 Vs2012测试通过1.1.1和1.1.1a的两个版本都试过了,都可以编译。