最近刚刚装了openssl,遇到了很多问题,于是记录了下来:
我的PC环境是:系统win7,32位,Microsoft Visual Studio 2010;
下面开始安装:
1、安装前的准备:首先下载到http://www.openssl.org/source/ 下载最新版本的openssl-1.0.1c.tar.gz 。解压到C:\openssl-1.0.1c,在openssl-1.0.1c的目录下面,会看到有两个文件INSTALL.W32 和INSTALL.W64;他们分别是在32位和64位下的安装文档,完全可以参考安装,不过是英文的。
2、 其次 http://www.activestate.com/ActivePerl 下载ActivePerl,点击安装到C盘,然后在命令行里面执行目录C:\Perl64\eg下的example.pl,若结果显示“Hello from ActivePerl!”,则说明Perl安装成功,可以开始使用Perl的相关命令来进行OpenSSL的安装了,准备工作做完了。下面开始安装:
3、运行“cmd”,cd改变目录到openssl-1.0.1c源码所在目录,
执行" perl Configure VC-WIN32 no-asm -DOPENSSL_USE_IPV6=0" no-asm表示没有用NASM编译,DOPENSSL_USE_IPV6=0 禁用IPV6,避免出现NMAKE : fatal error U1077: ‘cl‘ : return code ‘0x2‘错误;这里为什么VC-WIN32,而不是64 ,我想应该是我们的IDE vc6.0是32的。
4、输入 : ms\do_ms
5、到目录C:\Program Files (x86)\Microsoft Visual Studio\VC98\Bin(vc6.0的根目录下面)执行VCVARS32.BAT
6、然后回到C:\openssl-1.0.1c 执行nmake -f ms\ntdll.mak; 看到下图,你就可以高兴了。安装成功。
检查下是否成功,执行命令:“nmake -f ms\ntdll.mak test”。或者“> cd out32dll
> ..\ms\test”测试。
安装完毕后,生成的头文件放在inc32目录,动/静态库和可执行文件放在outdll目录。查看C:\openssl-0.9.8.e下包含了三个文件夹Bin、include、lib。bin下包括 openssl.exe(openssl指令程序)、ssleay32.dll(ssl协议动态库)、libeay32.dll(密码算法库)。lib下 包括libeay32.lib,ssleay32.lib。Include目录包括了OpenSSL开发设计的头文件。
所遇问题:
1、出现“nmake不是内部或者外部命令或者.bat文件” 的情况
解决方法:nmake.exe的文件,这个文件应该位于C:\Program Files\Microsoft Visual Studio\VC98\Bin目录中,配置环境变量即可。操作:右键单击我的电脑-->属性-->高级-->环境变量--系统变量 (找到path)-->编辑,将C:\Program Files\Microsoft Visual Studio\VC98\Bin加到未尾(注意要和前一个路径用";"隔开,并以";"结束;最后要提醒一点,一定要重启机器,新的path才会生效;
2、 此时以为问题解决,重新执行命令“nmake -f ms\ntdll.mak”发现弹出警告框,标题为cl.exe提示缺少mspdb60.dll。
解决缺少mspdb60.dll问题将目录\Common\MSDev98\Bin下的mspdb60.dll文件,复制到C:\Program Files\Microsoft Visual Studio\VC98\BIN下,VC6.0即可正常运行。
3、此时以为问题解决,重新运行“nmake -f ms\ntdll.mak”命令,发现出现问题,
“ms\uplink.c(11) : fatal error C1083: Cannot open include file: ‘windows.h‘: No such file or directory NMAKE : fatal error U1077: ‘cl‘ : return code ‘0x2‘ Stop.错误的时候”
解决:先运行vcvars32命令,vcvars32.bat用于设置VC命令行编译的环境变量。
重新运行“nmake -f ms\ntdll.mak”命令,大功告成。执行通过
4如果Prel 安装出错了,原因可能是在环境变量里面没有添加C:\Perl64\bin;C:\Perl64\site\bin;添加上就好了。具体怎么添加环境变量就不说啦。
5、如果出现如图所示的问题
6、如果在打开时候出现WARING:can‘t open config file:/usr/local/ssl/openssl.cnf,只需要set OPENSSL_CONF=c:\安装目录下 \openssl.cfg。
7、如果出现这个问题的话,
8.1>LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
我的电脑里面安装了vs2010,最近更新了系统,打了一些补丁,结果就出现这种错误了。在电脑里面搜索发现C:\Program Files\Microsoft Visual Studio 10.0\VC\binC:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7600.16385_none_ba476986f05abc65C:\Windows\Microsoft.NET\Framework\v4.0.30319 这三个路径里面都有cvtres.exe文件,于是我尝试使用第二个路径里面的文件替换第一个路径的文件,问题解决。
按照上面的做法,应该不会出现这个问题,我目前还不知道怎么解决。还望指导;至于还有其他的什么问题,望多多指导,附上几个链接: