c++ - 确定 Qt 库链接
问题描述
我试图在项目(.pro)文件中猜测 Qt 的库链接。我正在使用各种 Qt 框架目录:32 位和 64 位 Windows、Linux 和 Android 版本;使用静态和共享的 Qt 库。我尝试了几种方法来检查 Qt 的链接,但到目前为止没有任何效果。
尝试1:
qtConfig(static): message("Qt 静态链接")
尝试2:
CONFIG(static, static|shared): message("Qt 静态链接")
尝试3:
static: message("Qt 静态链接")
I guessed all previous test would lead the same result, and thus show the "message" when selected Qt build is a static one, but I don't know if it's a Qt Creator issue or if I'm overriding *CONFIG
variables in project tree. 我已经检查了太多次,但我没有发现任何问题。
解决方案
没有像“静态”这样的 Qt-config 功能。所以正确的是
!qtConfig(shared): message("Qt statically linked")
作为替代方案,您可以这样做
!contains(QT.global.enabled_features, shared): message("Qt statically linked")
但是这个记录更少,所以你最好坚持使用qtConfig()
哪个基本上测试相同的东西。
第 2 项是对用户项目本身的构建配置的测试,即如果您正在构建自己的静态或共享库。
No. 3 是 No. 2 的错误方法,因为CONFIG
允许用户同时包含shared /static、debug/release 等。只有最后一个重要。
推荐阅读
- java - 我想创建非 Web Spring Boot 应用程序
- android - 在 SubscriptionClient 上调用 RegisterMessageHandler 时出现超时异常
- java - 尽管指定了相同名称和 XML 映射的字段,Dozer Mapper 仍不映射
- angular - 如何测试 HttpClient 请求
- ruby-on-rails - 即使我使用的是 shopify_app gem,添加新范围时仍缺少范围错误
- wso2 - WSO2 APIM 与 WSO2 EI 6.6、7.0 和 DSS
- angular - 当表单组变脏时,如何在角度过滤的垫表上启用表单组的保存按钮?
- sql - 在选择中的不同值之前添加“
- css - 使用 Angular 和 CSS 在表格列中粘贴单元格
- flutter - 如何在 Flutter 的 TextFormField 上附加两个后缀图标按钮?