提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

在使用QT进行的项目开发中具备WEB端通信功能,搭建了HTTP框架,HTTP请求按照是否加密来分有两种类型,一种为常规个HTTP请求,另一种为加密的HTTPS请求,但嵌入式后台需要使用HTTPS请求时则需要OPENSSL来支持,本文就是针对QT开发项目需要使用HTTPS功能时框架的搭建方式。


一、搭建环境要求

Qt版本:Qt5.9.5
openssl版本:1.0.2l
(注意:Qt5.9.5版本需要搭配openssl1.0.2系列的版本,其与openssl1.1.1系列版本不兼容,编译时会出现许多未知错误,猜想可能是Qt5.9.5源码验证向下兼容,而对于新版本的openssl没有进行兼容测试)

二、搭建步骤

1.aarch64-linux-gun编译器下载

链接: aarch64-linux-gun编译器
编译器搭建大家可以到网上找一下哈,搭建方式很简单,里面有配置脚本执行完就行了,有些需要配置编译器的环境变量,按照说明配置即可;

2.OPENSSL官网下载

链接: OPENSSL版本
在这里插入图片描述
将openssl1.0.2l源码下载下来后放到linux系统目录下,进行解压:

# tar -xvf 源码压缩包
# cd 源码解压目录
# touch build.sh
# gedit build.sh
脚本内容如下:
#!/bin/sh
./Configure linux-aarch64 no-asm shared --prefix=/home/user/WorkSpace/openssl/out --cross-compile-prefix=aarch64-linux-gnu-

在这里插入图片描述

#  sh build.sh
#  make
# make install

在这里插入图片描述

输出文件如上图所示。

3.Qt源码下载

进行Qt官网下载Qt5.9.5版本源码,并放到linux目录下进行解压,解压完后将输出目录拷贝到Qt源码目录,如下图所示:
在这里插入图片描述
创建配置脚本,内容如下:

#!/bin/sh
OPENSSL_LIBS='-L/home/user/WorkSpace/qt-everywhere-opensource-src-5.9.5/openssl1.0.2l/lib -lssl -lcrypto' \
./configure \
-prefix /home/user/WorkSpace/QT/qtCreator5.9.5-Aarch64 \
-confirm-license \
-opensource \
-shared \
-release \
-make libs \
-xplatform linux-aarch64-gnu-g++ \
-no-xcb	\
-openssl-linked \
-I/home/user/WorkSpace/qt-everywhere-opensource-src-5.9.5/openssl1.0.2l/include \
-L/home/user/WorkSpace/qt-everywhere-opensource-src-5.9.5/openssl1.0.2l/lib \
-no-opengl

开始执行配置脚本

# sh 配置脚本

在这里插入图片描述
如上图所示即openssl链接成功,开始进行编译

# make 
# make install

之后需要将openssl生成的库文件如下6个文件拷贝到QT库文件中:
在这里插入图片描述
Qt源码生成的可执行与库文件如下:
在这里插入图片描述
如果不将openssl库放入Qt库中则在使用QtNetWork模块会导致编译出错,如下图所示:
在这里插入图片描述

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐