无法使用 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 项目(链接器错误)的主要内容,如果未能解决你的问题,请参考以下文章

在 qt5 中设置链接器选项

Xcode 10b5 - 重复符号链接器错误,无法使用 Crashlytics 编译

qt creator qt5.1 vs2010 使用静态库时链接器错误

构建一个最小的 Qt 控制台项目失败,出现一个神秘的链接器错误 LNK2001: Unresolved external Symbol

如何修复编译 Mach-O 链接器错误

LLVM 缺少链接器,无法编译 lld(llvm 链接器)