error: LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QWidget::

今天从linux移植到window上,用cmake管理的结果出了一堆错误

main.cpp.obj:-1: error: LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QWidget::QWidget(class QWidget *,class QFlags)" (__imp_??0QWidget@@QEAA@PEAV0@V?$QFlags@W4WindowType@Qt@@@@@Z),该符号在函数 "public: __cdecl BsrUi::BsrUi(class QWidget *)" (??0BsrUi@@QEAA@PEAVQWidget@@@Z) 中被引用

main.cpp.obj:-1: error: LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: void __cdecl QWidget::show(void)" (__imp_?show@QWidget@@QEAAXXZ),该符号在函数 main 中被引用

等等

最后发现是链接的问题

错误的是

target_link_libraries(${SUB_PROJECT})

正确的是

target_link_libraries(${SUB_PROJECT} Qt5::Widgets Qt5::Core)

你可能感兴趣的:(error: LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: __cdecl QWidget::)