VS下OPenssl环境配置,个人些出现的问题及解决
来源:互联网 发布:java 设置中奖率 编辑:程序博客网 时间:2024/05/29 12:27
一、预安装准备
1、安装Visual Studio 2005
如果安装的是VC++60,实际在编译OpenSSL时,总是会缺少某些文件,比如ml.exe,cl.exe....还有masm错误等,头都大了,还等着要测试,没时间一点点去试,直接换成Visual Studio 2005了。
2、安装Perl
下载地址:http://www.activestate.com/ActivePerl
天缘安装的ActivePerl-5.8.6.811-MSWin32-x86-122208.msi版本,太高版本没用。默认安装目录C:\Perl。
3、下载OpenSSL 0.9.8
下载地址:http://www.openssl.org/source/,版本不要太新(如果是做产品开发建议用最新的,前期测试所有软件都可以用老一点的,会少一些兼容问题,新版本往往跨度较大,修改较多,多个软件配合时自然很容易打架)。
如果只是使用OPENSSL,而且版本合适,可以尝试人家编译好了的,直接下载安装即可:
http://www.openssl.org/related/binaries.html
二、安装OpenSSL
1、解压OpenSSL到系统盘
比如C:\OpenSSL。
2、配置WIN32环境
打开CMD命令行,进入C:\OpenSSL目录,执行命令
perl Configure VC-WIN32
3、进入VC BIN目录,配置VC环境变量
进入VS安装路径VC/Bin目录下,运行:
VCVARS32.BAT
设置环境变量。
4、返回OpenSSL目录,创建makefile文件
ms\do_ms
该命令不执行汇编语言编译,如报告文末错误,可以尝试ms\do_masm(使用汇编语言)、ms\do_nasm、ms\do_nt等,这几个配置文件是针对不同的系统配置写的批处理。
至于这几个命令区别如下,其它的暂时没用到未深究,有经验之士欢迎赐教。
- If you are using MASM then run:
> ms\do_masm
- If you are using NASM then run:
> ms\do_nasm
- If you don't want to use the assembly language files at all then run:
> ms\do_ms
5、在Openssl目录下,执行编译
nmake -f ms\ntdll.mak
在执行这步时,若出现nmake不存在命令,是VS没有配置
CL不存在命令时,是VS的VC没正确配置。
path = X:VS安装路径\VC\Bin;X:VS安装路径\Common7\IDE
.NMAKE:fatal error U1077.“cl.exe” return code 0xc0000135 情况同上
产生原因:在安装visual studio的时候没有勾选注册环境变量导致的。
解决办法:在系统环境变量中加入visual studio的安装路径:vs安装路径\VC\Bin,以及vs安装路径\Common7\IDE
.NMAKE:fatal error U1077. return code 0x2
产生原因:找不到代码文件中包含的头文件
解决办法:cmd下进入到vs安装路径\VC\Bin下,执行vcvars32,此时会执行vcvas32.bat自动为vs设置环境变量
若还是错误。。。
这个在openssl官方网站上找到了,方法是禁用IPV6
在openssl目录下执行下列命令
perl Configure VC-WIN32 -DOPENSSL_USE_IPV6=0
最终编译动态库完成后,输出都在out32dll目录下:包括可执行文件、两个dll 和两个lib文件: libeay32.dll, libeay32.lib, ssleay32.dll, ssleay32.lib,如果使用VS/VC编程只需按照下文的方法进行即可,如果需要使用openssl命令,还需要在系统环境变量path中增加c:\openssl\out32dll路径,因为openssl.exe就在该目录下,声明后可以直接在命令行中使用openssl命令。
三、编程设置
1、 配置包含文件
打开VS->Tools->Options->projects and solutions->VC++ Directories(VC6路径VC->Tools->Options->Directories),在Include files中增加C:\openssl\inc32目录,假设openssl安装目录为C:\openssl,下同。
在Libray files中增加C:\openssl\out32dll。
2、 包含头文件,导入LIB库
在源程序中包含以下三个头文件并加入LIB:
#include <openssl/ssl.h>
#include <openssl/err.h>
#include <openssl/bio.h>
#pragma comment(lib, "libeay32.lib")
#pragma comment(lib, "ssleay32.lib")
1、安装Visual Studio 2005
如果安装的是VC++60,实际在编译OpenSSL时,总是会缺少某些文件,比如ml.exe,cl.exe....还有masm错误等,头都大了,还等着要测试,没时间一点点去试,直接换成Visual Studio 2005了。
2、安装Perl
下载地址:http://www.activestate.com/ActivePerl
天缘安装的ActivePerl-5.8.6.811-MSWin32-x86-122208.msi版本,太高版本没用。默认安装目录C:\Perl。
3、下载OpenSSL 0.9.8
下载地址:http://www.openssl.org/source/,版本不要太新(如果是做产品开发建议用最新的,前期测试所有软件都可以用老一点的,会少一些兼容问题,新版本往往跨度较大,修改较多,多个软件配合时自然很容易打架)。
如果只是使用OPENSSL,而且版本合适,可以尝试人家编译好了的,直接下载安装即可:
http://www.openssl.org/related/binaries.html
二、安装OpenSSL
1、解压OpenSSL到系统盘
比如C:\OpenSSL。
2、配置WIN32环境
打开CMD命令行,进入C:\OpenSSL目录,执行命令
perl Configure VC-WIN32
3、进入VC BIN目录,配置VC环境变量
进入VS安装路径VC/Bin目录下,运行:
VCVARS32.BAT
设置环境变量。
4、返回OpenSSL目录,创建makefile文件
ms\do_ms
该命令不执行汇编语言编译,如报告文末错误,可以尝试ms\do_masm(使用汇编语言)、ms\do_nasm、ms\do_nt等,这几个配置文件是针对不同的系统配置写的批处理。
至于这几个命令区别如下,其它的暂时没用到未深究,有经验之士欢迎赐教。
- If you are using MASM then run:
> ms\do_masm
- If you are using NASM then run:
> ms\do_nasm
- If you don't want to use the assembly language files at all then run:
> ms\do_ms
5、在Openssl目录下,执行编译
nmake -f ms\ntdll.mak
在执行这步时,若出现nmake不存在命令,是VS没有配置
CL不存在命令时,是VS的VC没正确配置。
path = X:VS安装路径\VC\Bin;X:VS安装路径\Common7\IDE
.NMAKE:fatal error U1077.“cl.exe” return code 0xc0000135 情况同上
产生原因:在安装visual studio的时候没有勾选注册环境变量导致的。
解决办法:在系统环境变量中加入visual studio的安装路径:vs安装路径\VC\Bin,以及vs安装路径\Common7\IDE
.NMAKE:fatal error U1077. return code 0x2
产生原因:找不到代码文件中包含的头文件
解决办法:cmd下进入到vs安装路径\VC\Bin下,执行vcvars32,此时会执行vcvas32.bat自动为vs设置环境变量
若还是错误。。。
这个在openssl官方网站上找到了,方法是禁用IPV6
在openssl目录下执行下列命令
perl Configure VC-WIN32 -DOPENSSL_USE_IPV6=0
最终编译动态库完成后,输出都在out32dll目录下:包括可执行文件、两个dll 和两个lib文件: libeay32.dll, libeay32.lib, ssleay32.dll, ssleay32.lib,如果使用VS/VC编程只需按照下文的方法进行即可,如果需要使用openssl命令,还需要在系统环境变量path中增加c:\openssl\out32dll路径,因为openssl.exe就在该目录下,声明后可以直接在命令行中使用openssl命令。
三、编程设置
1、 配置包含文件
打开VS->Tools->Options->projects and solutions->VC++ Directories(VC6路径VC->Tools->Options->Directories),在Include files中增加C:\openssl\inc32目录,假设openssl安装目录为C:\openssl,下同。
在Libray files中增加C:\openssl\out32dll。
2、 包含头文件,导入LIB库
在源程序中包含以下三个头文件并加入LIB:
#include <openssl/ssl.h>
#include <openssl/err.h>
#include <openssl/bio.h>
#pragma comment(lib, "libeay32.lib")
#pragma comment(lib, "ssleay32.lib")
0 0
- VS下OPenssl环境配置,个人些出现的问题及解决
- openssl在vs下编译环境配置问题
- VS OpenSSL 环境配置
- ios7下出现的问题及解决
- opencv的配置及配置出现的问题的解决
- linux下的openssl配置及纠错
- 解决XCODE配置LLVM环境出现的问题
- win10配置java环境时出现问题的解决
- OPENSSL VS环境下源码调试
- Windows下OpenSSL环境配置
- tomcat配置过程出现的问题及解决
- CentOS7下配置QT环境常出现的问题
- Windows下的PHP开发环境配置及常见问题解决
- VS下配置环境
- VS下配置libcurl和openssl
- windows下vs 2015下libtorrent库的配置,vs2015下-boost-openssl-libtorrent的配置
- Linux环境下配置出现下列问题
- VS开发环境下生成和调用dll出现的问题和解决方法-1
- unity 3d快熟使用KGFMapSystem开发小地图
- Java程序如何读取xxx.properties配置文件
- 如果经常使用linux命令,技巧你需要必备
- 字符编码杂谈
- android:inputType参数类型说明
- VS下OPenssl环境配置,个人些出现的问题及解决
- xcode4.4+ APP 打包以及提交apple审核详细流程(新版本更新提交审核)
- LinuxCast学习笔记二十二:vi与text操作
- 陶氏海水淡化膜渗透运行时应注意事项
- 苹果公司发布iPhone 5s和iPhone 5c
- 记录一些创建图标的方法
- 存储器的保护
- 莫名其妙的横竖屏切换导致phone进程崩溃
- copy thinkphp