QT 源码 静态编译 OpenSSL 1.1 为no 的解决办法
时间: 2024-03-03 10:53:12 浏览: 86
QT 静态编译后中文可能会出现乱码解决办法
如果你在编译 QT 源码时遇到了静态编译 OpenSSL 1.1 为 no 的问题,可以按照以下步骤解决:
1. 确认你已经安装了 OpenSSL 1.1 库。如果你没有安装,可以使用以下命令安装:
对于 Ubuntu/Debian 系统:
```
sudo apt-get install libssl-dev
```
对于 CentOS/RHEL 系统:
```
sudo yum install openssl-devel
```
2. 确认你已经正确配置了 QT 的 configure 参数。你需要加入以下参数:
```
-openssl-linked -openssl-include-path /usr/include/openssl -openssl-lib-path /usr/lib/x86_64-linux-gnu
```
如果你的 OpenSSL 安装在其他路径下,需要将上面的路径修改为你的实际路径。
3. 重新运行 QT 的 configure 脚本,命令如下:
```
./configure -static -release -prefix /usr/local/qt-5.14.1 -opensource -make libs -no-pch -no-icu -no-opengl -nomake examples -nomake tests -openssl-linked -openssl-include-path /usr/include/openssl -openssl-lib-path /usr/lib/x86_64-linux-gnu
```
注意,这里的路径需要根据你实际的安装路径进行修改。
4. 编译 QT,命令如下:
```
make -j8
```
这里的 `-j8` 参数表示使用 8 个线程进行编译,可以根据你的 CPU 核心数进行调整。
这样就可以解决静态编译 OpenSSL 1.1 为 no 的问题了。
阅读全文