gpt4 book ai didi

c++ - Qt4 到 Qt5 链接错误

转载 作者:太空宇宙 更新时间:2023-11-04 14:02:03 25 4
gpt4 key购买 nike

我似乎遇到了一个小问题,我正在尝试将 Qt4 应用程序移植到 Qt5,在我到达链接部分之前一切正常。我浏览了 QT 迁移指南并完成了编译的所有操作,但它不会链接。

它一直死于 ld: library not found for -lQt5Widgets 或其他东西,我不确定我是否遗漏了什么或者我应该向我的 make 文件添加一些东西,但是一个基本的 Hello World 应用程序运行良好。

我的 .pro 文件里面有基本的东西

CONFIG = qt uic resources thread stl warn_on
QT += core gui xml

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

*-g++ : QMAKE_CXXFLAGS_WARN_ON += -Wno-sign-compare

DEPENDPATH += crypto dialogs export forms import lib translations res widgets
INCLUDEPATH += . lib crypto plugins/interfaces export import dialogs

然后是一堆调试打开和东西来创建 PLIST 等等,即使删除也不能解决问题所以它们不相关(你可以在 https://github.com/relgames/keepassx/blob/master/src/src.pro 看到它)

出于某种原因,它试图-l Qt 框架而不是-framework 例如它生成

-L/Users/user/Qt/5.1.1/clang_64/lib -lQt5Widgets -lQt5Xml -lQt5Gui -lQt5Core

在链接步骤上,但应该是

-F/Users/user/Qt/5.1.1/clang_64/lib -framework QtWidgets -framework QtXml -framework QtGui -framework QtCore

更改它并通过终端运行它然后工作,但显然这不会工作,因为 Qt 还没有完成它的所有步骤。知道为什么会这样吗?它似乎像在 Linux 上那样做,而不是在 Mac 上做?

我正在尝试编译 https://github.com/relgames/keepassx在 Qt5 上

最佳答案

我尝试将其更新为 qt5 但失败了。除了 x11EventFilter,几乎所有的事情都完成了。我失败的尝试可以在这里找到 https://github.com/relgames/keepassx/tree/qt5

如果您只需要构建和运行,请使用 qmake-qt4 && make(先清理目录)。

关于c++ - Qt4 到 Qt5 链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18903681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com