Название: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 09, 2012, 03:41 Здравствуйте, долго лазил по форумам, решения не нашел.
Собрал Qt Creator и плагин с помощью minqw, закинул плагин в папку C:\Qt\qtcreator-xxx\bin\designer. Открываю "творца", мой виджет нормально отображается, но как только я пытаюсь собрать проект с его использованием, возникают следующие ошибки: Цитировать In file included from mainwindow.cpp:2: ошибка: customspin.h: No such file or directory ошибка: ISO C++ forbids declaration of 'CustomSpin' with no type ошибка: expected ';' before '*' token In member function 'void Ui_MainWindow::setupUi(QMainWindow*)': ошибка: 'customSpin' was not declared in this scope ошибка: expected type-specifier before 'CustomSpin' ошибка: expected ';' before 'CustomSpin' Этот пример я взял вот отсюда: http://www.metrotek.spb.ru/files/sources/qt-widgets-article.zip в папке widget-plugin На не пересобранном qt creatore даже удалось запустить данный пример, но самого виджета не было в списке. В чем может быть проблема? Если что, то вот pro-файлы самого проекта с виджетом и того который использует его соответственно: Код: TARGET = widget_plugin Код: TARGET = widget_plugin_usage Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 09, 2012, 16:43 Есть какие-нибудь идеи?
Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: V1KT0P от Май 09, 2012, 16:51 Есть какие-нибудь идеи? У меня спокойно без ошибок собирается.Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 09, 2012, 20:27 тот пример по ссылке?
а ты qt creator сам собирал? Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: V1KT0P от Май 09, 2012, 21:12 тот пример по ссылке? Блин первый раз не глянул ошибку, тебе же говорят что заголовочный файл "customspin.h" не найден:а ты qt creator сам собирал? Цитировать ошибка: customspin.h: No such file or directory Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 09, 2012, 21:42 да это я понял, я кидаю его к проекту там возникает другая ошибка
Цитировать error: collect2: ld returned 1 exit status Если не сложно, можешь описать по пунктам что нужно для того того, чтобы правильно собрать, подключить и использовать кутэшные плагины. Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: V1KT0P от Май 09, 2012, 22:27 да это я понял, я кидаю его к проекту там возникает другая ошибка Посмотри на вкладке "Консоль сборки" там будет более подробное описание ошибки.Цитировать error: collect2: ld returned 1 exit status Если не сложно, можешь описать по пунктам что нужно для того того, чтобы правильно собрать, подключить и использовать кутэшные плагины. Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 11, 2012, 15:28 Вот что пишет.
Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: Пантер от Май 11, 2012, 15:43 Нет реализации конструктора CustomSpin.
Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 11, 2012, 15:47 Как же нет, если вот он:
Код: CustomSpin::CustomSpin( QWidget *parent ) Правда он в файле customspin.cpp Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: V1KT0P от Май 11, 2012, 15:51 Вот что пишет. А библиотеку customspin ты подключил?Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 11, 2012, 16:01 Ну вроде да.
(http://s50.radikal.ru/i127/1205/7a/dbe25d798b03.png) Название: Re: Не собирается проект с кастомными виджет& Отправлено: DrWebber от Май 11, 2012, 16:14 Может кто-нибудь объяснить где какие файлы должны находиться и какие должны быть подключены к проекту?
Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: V1KT0P от Май 11, 2012, 16:15 Ну вроде да. Да не плагин, а именно библиотеку подключил к своему проекту в pro файле? При компиляции он видит заголовочный файл, решает что функция уже есть, но так как она в виде библиотеки то при линковке ее нету ибо ты либу не подключил вот и ошибка.Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 11, 2012, 17:10 Подключил и все равно ошибки:
(http://s019.radikal.ru/i634/1205/2d/e859b58c35b8t.jpg) (http://radikal.ru/F/s019.radikal.ru/i634/1205/2d/e859b58c35b8.png.html)(http://i068.radikal.ru/1205/dc/a45d9d70a8edt.jpg) (http://radikal.ru/F/i068.radikal.ru/1205/dc/a45d9d70a8ed.png.html) Код: TARGET = widget-plugin-usage Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: Mikhail от Май 11, 2012, 22:27 Вам же сказали, что к проекту нужно подключить библиотеку
LIBS += widget_plugin.lib желательно с путем Да и qmake неплохо сделать Название: Re: Не собирается проект с кастомными виджет& Отправлено: DrWebber от Май 12, 2012, 01:14 у меня нет .lib файла, есть только .dll и .a
Я компилировал плагин с помощью mingw, а вот если компилировать студиевским компилятором, то там как раз нет dll, но есть lib. Это нормально? Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: Mikhail от Май 12, 2012, 08:18 Значит надо подключать
LIBS += widget_plugin.a или LIBS += lwidget_plugin Для получения dll и lib при использовании MSVC необходимо что то типа #ifdef DLL1_EXPORTS #define DLL1_API __declspec(dllexport) #else #define DLL1_API __declspec(dllimport) #endif Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: DrWebber от Май 12, 2012, 13:15 Значит надо подключать LIBS += widget_plugin.a или LIBS += lwidget_plugin Не помогло, те же ошибки. Я правильно понял, что qt creator и плагин должны быть собраны одним компилятором? Что если все пересобрать студиевским, может помочь? Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: Mikhail от Май 12, 2012, 15:42 Конечно и плагин и creator должны быть собраны одним компилятором и Qt также им
Название: Re: Не собирается проект с кастомными виджетами qt creator Отправлено: slava_d200 от Ноябрь 11, 2012, 17:16 DrWebber
так у Вас получилось собрать, у меня аналогичная ситуация. плагины собираются, но при использовании ругается что типа класс не найден. |