无法使用 QtSQL 编译 Qt 项目(链接器错误)
Posted
技术标签:
【中文标题】无法使用 QtSQL 编译 Qt 项目(链接器错误)【英文标题】:Can't compile Qt project with QtSQL (linker errors) 【发布时间】:2013-08-01 19:10:02 【问题描述】:我正在尝试编译一个 qt 项目(在 Qt 5.0.2 上的 Qt Creator 2.7.0 中)并且我不断收到与 QtSQL 库有关的链接器错误(KioskBridge 是我正在使用的文件/类sql in):
kioskbridge.obj:-1: error: LNK2019: unresolved external symbol "__declspec(dllimport) public: __cdecl QSqlDatabase::QSqlDatabase(void)" (__imp_??0QSqlDatabase@@QEAA@XZ) referenced in function "public: __cdecl KioskBridge::KioskBridge(class html5ApplicationViewer *)" (??0KioskBridge@@QEAA@PEAVHtml5ApplicationViewer@@@Z)
我的 pro 文件包含 QT += sql,但这似乎并没有使它与适当的库链接。
有什么想法吗?
【问题讨论】:
在将 QT += sql 添加到 .pro 文件后是否运行 qmake? 没有。我真的很傻。你真的应该把它设置为答案,因为它刚刚解决了它。 【参考方案1】:修改 .pro 文件后,您需要运行 qmake(这将重新生成具有正确依赖项的 makefile),然后才能成功地将您的应用程序与新添加的模块。
【讨论】:
以上是关于无法使用 QtSQL 编译 Qt 项目(链接器错误)的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 10b5 - 重复符号链接器错误,无法使用 Crashlytics 编译
qt creator qt5.1 vs2010 使用静态库时链接器错误
构建一个最小的 Qt 控制台项目失败,出现一个神秘的链接器错误 LNK2001: Unresolved external Symbol