使用VC6.0 编译OPENSSL
在学习中记录和分享 时间: 2015-5-27
需要的工具
Openssl、NASM、Perl 下载地址: 1. Openssl
http://www.openssl.org/source/
2. NASM (Netwide Assembler)
http://www.nasm.us/ 3. Perl
http://www.perl.org/
一、先安装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 Path
set MSDevDir=C:\\Program Files\\Microsoft Visual Studio\\Common\\MSDev98 echo -- Added MSDevDir
echo -- 用法:msdev proj1.dsw /make \echo -- 用法: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\\out32dll
OpenSSL编译方法-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
百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库vc6.0编译OpenSSL两种方法(2024.5更新)在线全文阅读。
相关推荐: