1. 问题描述
使用Qt创建"Empty qmake Project"时,添加main.cpp文件,包含(#include)了<QtWidgets/QApplication>和<QtWidgets/QLabel>两个文件,在main函数中创建并使用了QApplication和QLabel的变量(对象),编译成功,而链接出错,报LNK2019和LNK2001两个错误。如下图:
2. 分析原因
LNK2019:——待添加
LNK2001:——待添加
初步参见资料(水平问题,尚未了然):
A. http://blog.csdn.net/roger_77/article/details/1259735
B. http://blog.sina.com.cn/s/blog_ac8fcfc30101a7jd.html
另有解释[注1]:
C++中将include和lib分为了两个文件夹,#include的文件中继续引用了lib中的文件,而lib相关文件路径未添加导致无法索引。
3. 解决方法
A. 在工程文件(*.pro)中加入语句:QT += widgets。该语句的作用援引描述(与注1所出同源):完成widgets模块所涉及lib文件路径的集中添加。
B. 将调试文件夹删除,重新Ctrl+R运行即可。
4. 派生问题
A. *.pro文件的作用;
B. *.pro文件的语法规范;
C. 调试文件夹下MakeFile的作用。
* 红色部分存疑,存坑,待后续深入学习加以修正;
* 蓝色部分未细究,存坑,有时间补充;