openssl的编译让我纠结了快两个夜晚了,终于在今天编译出来了.......
记录下编译此库的种种。
正常过程可以参考此文,图文攻略
http://blog.chinaunix.net/space.php?uid=20479991&do=blog&id=216269
简单点说就是
1) 安装Actionperl编译环境
2) 打开cmd命令行,进入openssl文件路径
3) 敲入perl Configure VC-WIN32 命令,运行
4) 敲入ms\do_ms 命令(注意是‘\’),运行
5) 打开你要用到的编译器(VC6,VC9等)找到bin目录下的vcvars32.bat,拖入cmd中,运行,自动配置编译环境。
6) 敲入nmake -f ms/ntdll.mak,运行
基本上没出现stop就算成功了,out32dll中的libeay32.dll, libeay32.lib, ssleay32.dll, ssleay32.lib就是编译完的库
出现的错误
1)NMAKE : fatal error U1077: 'ml' : return code '0x1'
解决方法就是下载一个新的MASM,版本8以上,具体方法可以参见
http://finebree.blog.163.com/blog/static/878793552008102474254280/
将c:/masm32/bin 下的ml.exe覆盖掉即可
2)NMAKE : fatal error U1077: 'cl' : return code '0x2'
解决方法是禁用IPV6
将原来perl Configure VC-WIN32替换成perl Configure VC-WIN32 -DOPENSSL_USE_IPV6=0
3)ml不是内部或外部命令,也不是可运行的程序或批处理文件
解决方法是 右键点击我的电脑->属性->高级系统设置->环境变量->系统变量中在path中将ml.exe的路径添加进去。例如我的ml.exe的路径是C:\masm32\bin,就在path中添加C:\masm32\bin;
4)fatal error LNK1103: debugging information corrupt; recompile module
解决办法是 在敲入 ms\do_ms命令后,进入openssl中的ms路径下,找到ntdll.mak文件,将里面所有的/debug都删除掉,然后保存。再进行第五步
如还有其他问题,请参考
http://www.metsky.com/archives/536.html
正常过程可以参考此文,图文攻略
http://blog.chinaunix.net/space.php?uid=20479991&do=blog&id=216269
简单点说就是
1) 安装Actionperl编译环境
2) 打开cmd命令行,进入openssl文件路径
3) 敲入perl Configure VC-WIN32 命令,运行
4) 敲入ms\do_ms 命令(注意是‘\’),运行
5) 打开你要用到的编译器(VC6,VC9等)找到bin目录下的vcvars32.bat,拖入cmd中,运行,自动配置编译环境。
6) 敲入nmake -f ms/ntdll.mak,运行
基本上没出现stop就算成功了,out32dll中的libeay32.dll, libeay32.lib, ssleay32.dll, ssleay32.lib就是编译完的库
出现的错误
1)NMAKE : fatal error U1077: 'ml' : return code '0x1'
解决方法就是下载一个新的MASM,版本8以上,具体方法可以参见
http://finebree.blog.163.com/blog/static/878793552008102474254280/
将c:/masm32/bin 下的ml.exe覆盖掉即可
2)NMAKE : fatal error U1077: 'cl' : return code '0x2'
解决方法是禁用IPV6
将原来perl Configure VC-WIN32替换成perl Configure VC-WIN32 -DOPENSSL_USE_IPV6=0
3)ml不是内部或外部命令,也不是可运行的程序或批处理文件
解决方法是 右键点击我的电脑->属性->高级系统设置->环境变量->系统变量中在path中将ml.exe的路径添加进去。例如我的ml.exe的路径是C:\masm32\bin,就在path中添加C:\masm32\bin;
4)fatal error LNK1103: debugging information corrupt; recompile module
解决办法是 在敲入 ms\do_ms命令后,进入openssl中的ms路径下,找到ntdll.mak文件,将里面所有的/debug都删除掉,然后保存。再进行第五步
如还有其他问题,请参考
http://www.metsky.com/archives/536.html