- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
vc60编译OpenSSL两种方法(20155更新).
使用VC6.0 编译OPENSSL在学习中记录和分享时间: 2015-5-27需要的工具Openssl、NASM、Perl下载地址:Openssl/source/NASM(Netwide Assembler)http://www.nasm.us/Perl/一、先安装Perl,默认安装,一直点击下一步就可以解压openssl-1.0.2a.tar.gz到 c:\openssl-1.0.2a解压nasm-2.11.08-win32.zip到c:\nasm-2.11.08,添加PATH路径c:\nasm-2.11.08目的使用Visual C++和NASM 交叉编译二、检查vc6.0的环境,打开cmd,分别输入cl、nmake。出现下面的界面说明环境设置正确设置方法,复制下面代码,保存为vc6.0vas.bat,在cmd下运行就可以了。echo Visual C++ 6.0 环境变量设置set include=C:\Program files\Microsoft Visual Studio\VC98\include;%include%echo -- Added VC++6.0 头文件set LIB=C:\Program files\Microsoft Visual Studio\VC98\lib;%LIB%echo -- Added VC++6.0 库文件set PATH=C:\Program Files\Microsoft Visual Studio\Common\Tools\WinNT;D:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;D:\Program Files\Microsoft Visual Studio\Common\Tools;C:\Program Files\Microsoft Visual Studio\VC98\bin;%PATH%echo -- Added VC++6.0 to Pathset MSDevDir=C:\Program Files\Microsoft Visual Studio\Common\MSDev98echo -- Added MSDevDirecho -- 用法:msdev proj1.dsw /make proj1 - win32 debugecho -- 用法:nmake /NOLOGO /a /s /f makefile.mak d:三、检查NASM,正确结果如下四、检查Perl,正确结果如下OpenSSL编译方法-交叉编译cmd切换到openssl-1.0.2a,输入命令perl Configure VC-WIN32 --prefix=c:\some\openssl\dir显示结果这步会在ms文件夹生成两个makefiel:nt.mak、ntdll.mak。nt.mak是静态编译的, ntdll.mak时动态编译的。选择交叉编译,输入ms\do_nasm输入nmake -f ms\ntdll.mak编译完成截图有提示ip6的错误,文件已经成功编译好了,保存在C:\openssl-1.0.2a\out32dllOpenSSL编译方法-VC独立编译很多人在不安装NASM,不设置NASM环境,使用上面的命令编译时,会出现如下的错误!:tmp32\sha1-586.asm(1427) : error A2070: invalid instruction operands:tmp32\sha1-586.asm(1571) : error A2070: invalid instruction operands:NMAKE : fatal error U1077: ml : return code 0x1明显这里是使用了汇编的源文件,但是没有适合的汇编编译器。网上的教程时复制一个ml.exe到VC6.0的环境中。实际测试在0.9.8版本中可以编译通过。在这个版本中时不行的。只能使用NASM编译或者编译选项中添加no-asm。下面就时具体的编译过程编译的命令perl Configure VC-WIN32 no-asm --prefix=c:/openssl输入命令ms\do_ms开始编译,这里选择动态编译nmake -f ms\ntdll.mak自动编译过程OK,成功编译完成了
文档评论(0)