Здравствуйте. Не могу подключить к проекту плагин виджетов.
Последовательность действий следующая:
Создаю новый проект, выбираю шаблон: "Пользовательский виджет Qt Designer", указываю компилятор: "Desktop Qt 5.8.0 MSVC2015 32bit", создаю 3 класса виджетов: Widget1, Widget2, Widget3. Все остальные настройки при создании нового проекта оставляю как есть.
Затем собираю проект и копирую образовавшийся dll файл (наз. mycollectionplugin.dll) в Qt\Qt5.8.0_msvc\Tools\QtCreator\bin\plugins\designer, для отображения новых виджетов.
Далее вновь создаю новый проект, "Приложение Qt Widgets". В файле проекта *.pro прописываю путь к lib файлу плагина и к заголовочным файлам.
Если попытаться использовать новые виджеты, то при сборке получаю следующие ошибки:
LNK2019: unresolved external symbol "public: __thiscall Widget1::Widget1(class QWidget *)" (??0Widget1@@QAE@PAVQWidget@@@Z) referenced in function "public: void __thiscall Ui_MainWindow::setupUi(class QMainWindow *)" (?setupUi@Ui_MainWindow@@QAEXPAVQMainWindow@@@Z)
LNK1120: 1 unresolved externals
Кстати эти же ошибки возникают если lib файл в принципе не подключать.
(При компиляции проекта mingw lib файл вообще не появляется.)
Pro файл плагина виджетов
CONFIG += plugin debug_and_release
TARGET = $$qtLibraryTarget(mycollectionplugin)
TEMPLATE = lib
HEADERS = widget1plugin.h widget2plugin.h widget3plugin.h mycollection.h
SOURCES = widget1plugin.cpp widget2plugin.cpp widget3plugin.cpp mycollection.cpp
RESOURCES = icons.qrc
LIBS += -L.
greaterThan(QT_MAJOR_VERSION, 4) {
QT += designer
} else {
CONFIG += designer
}
target.path = $$[QT_INSTALL_PLUGINS]/designer
INSTALLS += target
include(widget2.pri)
include(widget1.pri)
include(widget3.pri)
Сориентируйте пожалуйста в чем ошибка?