Qt中出現qt : undefined reference to `vtable forXXX解決辦法
我們在Qt中要使用訊號和槽的時候必須要新增Q_OBJECT巨集,否則會報錯。但是有時候我們添加了Q_OBJECT的時候,我們會發現同樣會報錯,報錯如下所示:
undefined reference to 'vtable for ***(類)
面對這個報錯,搞了很久了,反覆檢查了自己的類和標頭檔案,發現完全沒有問題呀。後來在網上搜索了一下答案,網上的方法有很多,我總結出來了兩點最簡單的。
一、修改.pro檔案
這是最簡單的一種,直接在.pro檔案中,打個空格或者換行符再儲存編譯就行了。目的讓Qt重新生成MakeFile檔案。修改完成後,編譯發現沒有報錯了。
二、直接去編譯目錄刪除Makefile檔案。
就這樣就可以了,非常簡單的解決辦法。
相關推薦
Qt中出現qt : undefined reference to `vtable forXXX解決辦法
我們在Qt中要使用訊號和槽的時候必須要新增Q_OBJECT巨集,否則會報錯。但是有時候我們添加了Q_OBJECT的時候,我們會發現同樣會報錯,報錯如下所示: undefined reference to 'vtable for ***(類) 面對這個報錯
Qt 編譯出錯:undefined reference to vtable XXX
在Qt編譯的過程中,程序會出現 error: undefined reference to `vtable for 類名'的問題,對於不經常使用QT的人來說甚是頭疼,其實這類問題發生的主要原因在於,一般我們定義了一個類以後,如果他是繼承了其他類的話 就比如說我們
undefined reference to 'function'及解決辦法
在開發演算法過程中,自己寫的函式編譯生成一個動態共享連結庫檔案.so. 然後由其他模組呼叫其中的函式時出現undefined reference to : function(要呼叫的函式)錯誤提示. 反覆檢查函式已經正確編寫,呼叫命令也沒問題. 使用nm命令檢查發現也沒問題,
Qt 出現“undefined reference to `vtable for”
在QT中定義了一個執行緒類,繼承自QThread, 在類中未加 Q_OBJECT 時編譯正常,加入後報錯如下: undefined reference to `vtable for myThread' 在串列埠下,手動make,無錯誤。 百度後得知: 一:預編譯器開啟巨集Q_OBJECT,宣告若干個由
<QT>Qt 出現“undefined reference to `vtable for”原因總結
由於Qt本身實現的機制所限,我們在使用Qt製作某些軟體程式的時候,會遇到各種各樣這樣那樣的問題,而且很多是很難,或者根本找不到原因的,即使解決了問題,如果有人問你為什麼,你只能回答--不知道。 今天我在這裡列舉的問題也是再編寫Qt程式時,
Qt 出現“undefined reference to `vtable for”原因總結;
由於Qt本身實現的機制所限,我們在使用Qt製作某些軟體程式的時候,會遇到各種各樣這樣那樣的問題,而且很多是很難,或者根本找不到原因的,即使解決了問題,如果有人問你為什麼,你只能回答--不知道;今天我在這裡列舉的問題也是再編寫Qt程式時,總是遇到的問題,問題普遍,而答案卻不唯一
Qt工作筆記-undefined reference to `vtable for MyObject'及對moc檔案的進一步理解
原始碼如下: main.cpp #include <QApplication> #include <QObject> #include <QTextCodec> class MyObject:public QObject{ Q
QT學習筆記:關於QT下配置OpenCV3.4.0後出現 error: undefined reference to 'cv::xxx'的問題及解決方案
按照網上的辦法,在QT中pro檔案末尾新增以下程式碼來引入OpenCV的庫和標頭檔案: INCLUDEPATH += D:\OpenCV3.4\opencv\build_mingw\install\x64\mingw\include LIBS += D:\Ope
Qt undefined reference to `vtable for’”問題的原因及解決方法
引用https://blog.csdn.net/morixinguan/article/details/81327075 QT中,類要支援訊號與槽機制,需要繼承自QObject並在標頭檔案開頭新增Q_OBJECT巨集. 如果使用QtCreator建立類時,沒有選擇繼承自QObject
初次使用Qt Creater網路程式設計,出現error: undefined reference to `
Qt 訊號發射部分 undefined reference to錯誤
在使用訊號與槽很容易發生 undefined reference to 發射訊號
①繼承QObject
②新增Q_OBJECT
③執行qmake
④構建
然後就可以執行啦!但是不知道是為什麼,悄咪咪放在這裡做個記錄 。
1 #ifndef TIMERWRITEFILE_H
2 #defin
undefined reference to `vtable for YAML::BadConversion' 報錯的解決方法
Bug 在編譯用到yaml程式的時候,遇到如下報錯: /home/liuhang/Documents/Momenta/catkin_ws/devel/lib/libloam.so: undefined reference to `vtable for Y
win10 QtCreator5.10 編譯opengl出現 error: undefined reference to `
codeblocks:編譯問題 undefined reference to vtable for...
一個嚴重的問題,在codeblocks用C++程式設計中出現 undefined reference to vtable for…的問題,昨天就遇到了,今天通過查資料才解決,主要涉及到類中的虛擬函式實現的問題。 相信大家都有習慣,程式設計時,寫幾個函式就編譯一下,否則全寫好再編譯的話會,會
undefined reference to `__gnu_mcount_nc'的解決 在編譯核心時出現瞭如下錯誤:
在編譯核心時出現瞭如下錯誤: init/built-in.o: In function `do_one_initcall': calibrate.c:(.text+0x14): undefined reference to `__gnu_mcount_nc' init/built-in.o: In
出現錯誤/ncnn/src/cpu.cpp:426: undefined reference to `stderr'完美解決方案。
前提情況 1。 android studio 編譯器 2。 利用ncnn前向推理框架進行移植caffemodel到android手機端 3。 使用cmake進行編譯,NDK java的c++介面 出現問題 /ncnn/src/cpu.cpp:426: undef
linux 連結庫檔案出現“undefined reference to" 問題的解決方法
最近在Linux下程式設計發現一個詭異的現象,就是在連結一個靜態庫的時候總是報錯,類似下面這樣的錯誤: (.text+0x13): undefined reference to `func' 關於undefined reference這樣的問題,大家其實經常會遇
Eclipse c++ 中[Linker error] undefined reference to `
C與C++混合程式設計問題:.C++呼叫.C檔案時出現:undefined reference to `xxxxx()'
本人使用qt的介面和opengl功能模擬演算法,該演算法需要在嵌入式中執行,因此需要用純C編寫,此時涉及到在C++寫的qt介面檔案中呼叫C檔案的庫函式,原先以為只需在C++中把C的.h檔案包含進去就可以正常使用,後來發現,使用這種方法時,在程式碼編寫時,C++檔案裡可以直接連
undefined reference to `vtable for’”問題的原因及解決方法
QT中,類要支援訊號與槽機制,需要繼承自QObject並在標頭檔案開頭新增Q_OBJECT巨集. 如果使用QtCreator建立類時,沒有選擇繼承自QObject類或其子類,而在建立後手工修改繼承自QObject並手工新增Q_OBJECT巨集,則在編譯時有可能會出現”und