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

相关推荐
clint4562 天前
C++进阶(1)——前景提要
c++
夜悊3 天前
C++代码示例:进制数简单生成工具
c++
郝学胜_神的一滴3 天前
CMake 021: IF 条件判据详诠
c++·cmake
_wyt0013 天前
洛谷 B3930 [GESP202312 五级] 烹饪问题 题解
c++·gesp
玖玥拾3 天前
C/C++ 数据结构(七)栈、容器适配器
c语言·数据结构·c++··容器适配器
один but you3 天前
constexpr函数
c++
凡人叶枫3 天前
Effective C++ 条款41:了解隐式接口和编译期多态
java·开发语言·c++·effective c++
凡人叶枫3 天前
Effective C++ 条款42:了解 typename 的双重意义
java·linux·服务器·c++
小胖xiaopangss3 天前
BRpc使用
c++·rpc
-森屿安年-3 天前
63. 不同路径 II
c++·算法·动态规划