openssl编译和集成

编译环境

  • 系统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,直接执行,非常方便

相关推荐
青草地溪水旁4 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(2)
c++·设计模式·抽象工厂模式
青草地溪水旁4 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(1)
c++·设计模式·抽象工厂模式
感哥4 小时前
C++ std::vector
c++
zl_dfq4 小时前
C++ 之【C++11的简介】(可变参数模板、lambda表达式、function\bind包装器)
c++
每天回答3个问题5 小时前
UE5C++编译遇到MSB3073
开发语言·c++·ue5
凯子坚持 c5 小时前
精通 Redis list:使用 redis-plus-plus 的现代 C++ 实践深度解析
c++·redis·list
JCBP_6 小时前
QT(4)
开发语言·汇编·c++·qt·算法
会开花的二叉树6 小时前
继承与组合:C++面向对象的核心
java·开发语言·c++
潮汐退涨月冷风霜7 小时前
数字图像处理(1)OpenCV C++ & Opencv Python显示图像和视频
c++·python·opencv
第七序章8 小时前
【C++STL】list的详细用法和底层实现
c语言·c++·自然语言处理·list