QT中能否调用openssl的库?该怎么解决

QT中能否调用openssl的库?该怎么解决,第1张

可惜我编译qt 4.8的时候没有编译openssl的库。

我试了在.pro文件中加入这些库,但好像没用。具体现象是QNetworkAccessManager 访问https时候一直没有response返回。

------解决方案--------------------------------------------------------

1、只有dll文件就动态载入这些库,如果有lib文件可以静态载入;

2、https访问必须同过ssl通道才行,你只是把库加入到项目中而没有具体调用相应的函数,也是没有效果的。

------解决方案--------------------------------------------------------

编译库,费时也费力。

------解决方案--------------------------------------------------------

zhu_xz兄说的对呀!需要编译Qt库。

我记得三年前我做过这个,这是我当时写的一个手册,不过可能已经过时了:

1. 安装OpenSSL

首先确保安装了ActivePerl

解压openssl-0.9.8k.tar.gz到C:\OpenSSL

在命令行中执行以下命令:

cd C:\OpenSSLms\mingw32编译结束后,将在C:\OpenSSL\outinc中生成Windows平台的头文件,在C:\OpenSSL\out中生成库文件。

2. 之后编译Qt

在configure中加入参数 -openssl -I C:\OpenSSL\outinc -L C:\OpenSSL\out

然后执行make

3. 编译完成后把C:\OpenSSL\libeay32.dll、C:\OpenSSL\libssl32.dll拷贝到Qt的bin目录中,并且把libssl32.dll改名为ssleay32.dll。

= =

您好,我来为您解答:

OpenSSL不是Qt的一部分,Qt自然不会提供

如果你一定要直接使用OpenSSL,你需要自己在http://openssl.org/下载和编译

如果我的回答没能帮助您,请继续追问。

1、安装Qt5

Qt5的安装比Qt4的安装简单多了,我装的是Qt5.4(qt-opensource-windows-x86-mingw491_opengl-5.4.0.exe),它集成了MinGW、Qt Creator等,不需要你再单独下载MinGW和Qt Creator。

首先,去Qt官网下载资源:qt-opensource-windows-x86-mingw491_opengl-5.4.0.exe;然后,双击安装即可。安装后,“开始”菜单

2、配置Qt

打开Qt Creator,工具–>选项,打开“选项”对话框

若没有检测出,则添加相应的Qt版本和编译器(MinGW),再设置构建套件(Kits):设备类型、编译器(MinGW)、调试器、Qt版本

3、使用Qt

打开Qt Creator,新建项目–>其他项目–>空的qmake项目,项目命名为“QtTest”,再添加新文件main.cpp。

在main.cpp中添加如下代码:

#include<QApplication>

#include<QVBoxLayout>

#include<QLabel>

#include<QPushButton>

int main(int argc,char *argv[])

{

QApplication app(argc,argv)

QWidget *window = new QWidget

window->setWindowTitle("QtTest")

//QLabel *label= new QLabel("Hello Qt")

QLabel *label = new QLabel("<h2><i>Hello</i>"" <font color = red>Qt</font><h2>")

QPushButton *button=new QPushButton("Quit")

QObject::connect(button,SIGNAL(clicked()),&app,SLOT(quit()))

QVBoxLayout *layout=new QVBoxLayout

layout->addWidget(label)

layout->addWidget(button)

window->setLayout(layout)

window->show()

return app.exec()

}

此时,代码显示如下错误:

运行时错误提示:#include<QApplication>–No such file……

实际上,QT5中很多常用的QT头文件都被移到core gui widgets 等模块中去了,在QT5中,.pro文件需要增加额外的一行(注意大小写):

QT += core gui widgets

其中Qt += core gui widgets 表示链接QtCore(d).dll、QtGui(d).dll、QtWidgets(d).dll。

我们在.pro文件中增加一行上述代码,保存,再双击打开.cpp文件,此时错误提示线消失,运行,结果


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/bake/11856119.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存