编译环境
- 系统windows
- openssl版本 1.1.1m
编译前可以看些openssl中的README,INSTALL文件,我这里以编译32位程序为例
编译命令
$ perl Configure { VC-WIN32 | VC-WIN64A | VC-WIN64I | VC-CE }
$ nmake
$ nmake test
$ nmake install
perl配置的时候可以指定更多参数 ,比如
{ VC-WIN32 | VC-WIN64A | VC-WIN64I | VC-CE }这些配置选项,根据实际情况进行选择。如果编译32位程序就用VC-WIN32,编译64位程序用VC-WIN64
--debug 生成debug库
no-asm 不用汇编代码,这一般用于debug时。
--prefix=编译生成物安装路径
nmake需要在开发人员命令行提示符中执行,
比如我装的是VS2019 ,那么就可以找到"Developer Command Prompt for VS 2019",适用这个命令行主要是为了设置编译的环境。
使用编译生成物
这里我的demo用cmake进行构建
cmake_minimum_required(VERSION 3.18)
project(mylea VERSION 1.0.0 LANGUAGES C CXX)
# 我这里使用的是mingw w64编译32位程序
set(CMAKE_C_FLAGS "-m32")
include_directories(include)
link_directories(${CMAKE_SOURCE_DIR}/../../build/lib)
link_libraries(libcrypto libssl)
file(GLOB_RECURSE myconf
mytest/*.c
)
add_executable(mylea ${myconf})
使用vs进行开发
mkdir build
cd build
//我这里生成32位工程
cmake ... -G "Visual Studio 16 2019" -A Win32
//生成vs工程后,直接打开就可以调试了,非常方便
使用vscode进行开发
这里我的编译器是mingw64
mkdir build
cd build
cmake ... -G "MinGW Makefiles"
cmake --build .
这样就生成exe,直接执行,非常方便