Qt的“undefined reference to `vtable for”错误解决(手动解决,加深理解)

Posted 朝闻道

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt的“undefined reference to `vtable for”错误解决(手动解决,加深理解)相关的知识,希望对你有一定的参考价值。

使用QT编程时,当用户自定义了一个类,只要类中使用了信号或槽. 
Code::Blocks编译就会报错(undefined reference to `vtable for). 

Google上有很多这个问题的回答,但很多说的很模糊,或者根本就不可行. 

其实,QT有自己的编译方法. 

不用IDE写一个类,QT的编译步骤是: 
1, cd 源代码目录 
2, qmake -project 
3, qmake project_name.pro 
4, make (如果你装的是minGW的话,就用minGW-make.exe) 

鉴于此,我们在Code::Blocks中Tools-->Config Tools-->add添加3项 见图: 

技术分享
 

 

技术分享

 

技术分享

 
注意:上面所有的paramiters 第一个字符必须是空格.

设置完成之后,编译工程只要这样做: 
Tools-->选择qmake -project,等待完毕-->选择qmake ,等待完毕-->选择minGW-make,等待完毕. 
这就完成了编译. 

注意:所有源代码必须放在工程的根目录下. 
你还要配制环境变量: 
在path中加: E:\QT\bin;E:\CodeBlocks\MinGW\bin 

当然,以上都是绝对路径,你需要改成你电脑上的路径. 

http://zxwmail.blog.163.com/blog/static/120947384201091911557185/

以上是关于Qt的“undefined reference to `vtable for”错误解决(手动解决,加深理解)的主要内容,如果未能解决你的问题,请参考以下文章

qt creator和qt的区别

什么是QT软件

Linux 打包 QT 程序

QT学习之QT 下载安装

Qt中的Qt Charts

QT跟MFC的区别?QT可以调用MFC的东西吗?