Всем привет. Возникла такая непонятная проблема.
Пытаюсь собрать проект на CLion, поддержка QT прописана.
cmake_minimum_required(VERSION 3.3)
project(Draw_line_cycle)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
find_package(Qt5Widgets)
set(SOURCE_FILES main.cpp MainWidget.cpp MainWidget.hpp)
add_executable(Draw_line_cycle ${SOURCE_FILES})
target_link_libraries(Draw_line_cycle Qt5::Widgets)
Дальше уже код с main.cpp
#include <QApplication>
#include "MainWidget.hpp"
int main(int argc, char **argv)
{
QApplication app(argc, argv);
MainWidget mainWidget;
mainWidget.setMinimumSize(320, 240);
mainWidget.show();
return app.exec();
}
А вот дальше код где пока что только конструктор и деструктор
#include "MainWidget.hpp"
MainWidget::MainWidget(QWidget *parent) : QWidget(parent)
{
}
MainWidget::~MainWidget()
{
}
А сама ошибка выглядит вот так, 2 строки на конструктор
CMakeFiles/Draw_line_cycle.dir/MainWidget.cpp.o: In function `MainWidget::MainWidget(QWidget*)':
undefined reference to `vtable for MainWidget'
и 2 строки на деструктор
CMakeFiles/Draw_line_cycle.dir/MainWidget.cpp.o: In function `MainWidget::~MainWidget()':
undefined reference to `vtable for MainWidget'
Самое интересное что пытался другие проекты собрать почти идентичные и собираються норм.
Может кто подскажет куда копать чтоыб найти ошибку?
Заранее спасибо.
Пользователь решил продолжить мысль 15 Сентября 2015, 18:54:09:
Проблема решина, в CMakeLists добавил строку set(CMAKE_AUTOMOC ON)
Но если честно не понятно почему некотоыре проги собираються без этйо строки а некотоыре только автомак файлы и нужно.