首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Qt Creator下的Libqxt

Qt Creator下的Libqxt
EN

Stack Overflow用户
提问于 2009-10-14 11:37:07
回答 2查看 3.8K关注 0票数 4

我想创建一个需要全局快捷键的小应用程序。因此,我已经下载了libqxt (0.5.1)的当前版本,并在Qt Creator中作为项目打开。

Libqxt以这种方式编译没有问题,所以我认为在项目的tab Dependencies中添加它会自动添加到构建中,就像Eclipse对JAR库所做的那样(我知道这是不同的IDE,但它似乎是它们中的一个共同特性)。

会发生什么?当需要时,Qt Creator会在我的项目之前编译qxt,但是当我想要包含它的头文件时,Qt Creator总是警告我它找不到它们。

可能我遗漏了标题的正确名称(我尝试了qxt文档中显示的标题:http://doc.libqxt.org/0.5.0/classQxtGlobalShortcut.html)

顺便说一句,我看了一下全局快捷键的代码,我想我可以把它撕下并在我的应用程序中使用,我将信任qxt团队并打开我的应用程序的代码。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-01-02 21:16:48

Qt Creator不知道如何向您的项目公开不同的库。这是开发人员的职责。依赖关系只确保在构建主项目之前已经构建了所提到的项目。

您真正关心的是在没有正确安装的情况下使用Qxt。假设已经运行了configure并构建了libqxt (使用Qt Creator或通过qmake+make手动构建),我的解决方案是将以下代码片段(具有明显的QXT_DIR定制)添加到.pro文件:

代码语言:javascript
复制
QXT_DIR = $${IN_PWD}/../libqxt-0.5.1
LIBS += -L$${QXT_DIR}/deploy/libs
INCLUDEPATH += $${QXT_DIR}/deploy/include
for(module, QXT) {
 MODNAME = $$upper($$replace(module, "(.).*", "\1"))$$replace(module, "^.", "")
 INCLUDEPATH += $${QXT_DIR}/deploy/include/Qxt$${MODNAME}
 INCLUDEPATH += $${QXT_DIR}/src/$${module}
 win32:CONFIG(debug, debug|release):MODNAME = $$join(MODNAME,,,d)
 LIBS += -lQxt$${MODNAME}
}

不幸的是,我不确定它是否适用于复杂的项目。

默认情况下,Qxt是在发布模式下构建的,但Qt Creator使用调试模式,它会导致Windows下的Qxt导致项目的二进制文件损坏。您必须将项目切换到发布模式,或者在调试模式下构建Qxt (运行configure -debug并重新构建Qxt)。

最后一件事:在Windows中,即使你成功构建了Qt Creator,你也不能运行你的项目。您必须将所需的Qwt*.dll文件(如果处于调试模式,则使用d-suffix版本)从libqxt-0.5.1/deploy/libs复制到your_project/(release|debug)目录。

票数 6
EN

Stack Overflow用户

发布于 2010-05-08 17:54:00

from the documentation

将以下行添加到.pro文件中:

代码语言:javascript
复制
 CONFIG  += qxt
 QXT     += core gui

注意:在Linux上构建Qxt时,不要忘记执行一个sudo make install,否则这个小魔术可能无法工作。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1565732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档