【发布时间】:2020-07-21 22:36:27
【问题描述】:
我想将我写的申请发送给一些同事。 到目前为止,我只是将二进制文件与所有库一起复制到一个 .zip 文件中并将其发送给他们。 这工作得很好。
我的最新更改涉及我正在使用 Qt Network 库。因此,我在 .zip 文件中包含了三个新的库文件:
libQt5Network.so.5libQt5Network.so.5.11libQt5Network.so.5.11.1
应用程序启动并运行,但在某些时候,预计会从 Web 下载多个文件。
不幸的是,一些下载失败。可以从FTP 服务器下载文件,但不能从https 下载文件。
我假设它可能与 OpenSSL 丢失有关,但我不确定。
当我开始使用 Qt Network 库时,我记得我从https 下载它时遇到了问题,这些问题与OpenSSL 有关。
我没有下载文件,而是收到以下错误消息:
qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_CTX_new
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_library_init
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_CTX_new
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_library_init
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
We got a connection error when networkLayerState is Unknown
qt.network.ssl: QSslSocket: cannot call unresolved function SSLv23_client_method
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_CTX_new
qt.network.ssl: QSslSocket: cannot call unresolved function SSL_library_init
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
qt.network.ssl: QSslSocket: cannot call unresolved function ERR_get_error
...
错误消息显然是指SSL 库。
请注意,我不相信我的代码在我的计算机上运行时存在问题。因此,我不会在这里发布代码。 我认为这与我部署代码的方式有关,并且缺少某些库?我能做些什么?
我尝试在可执行文件和libQt5Network.so.5 上运行ldd,但它没有列出与OpenSSL 相关的任何内容。
请注意,我不是计算机专家,我只是想将他的软件尽可能简单地分发给一些同事的科学家。
【问题讨论】:
标签: c++ qt deployment openssl