Все плагины QtCreator для разных приложений приходится сваливать в один каталог в дереве Qt - оттуда их берёт QtDesigner. Причём берёт их при старте, загружать и выгружать на ходу он не умеет, поэтому подстроить под разные проекты его невозможно. У меня 15 своих плагинов дизанера для разных приложений, и это ещё не много. Причём есть такие плагины, которые внутри себя используют другие плагины. Например, есть мой плагин декорированного окна с использованием моего плагина декорированных кнопок. Такое окно используется в одном приложении, а кнопки сами по себе и в других.
И вот я возился с этим окном, не доделал его немного, отложил. Надо поработать с приложениями, которые используют только кнопки. Открываю одно, и опа... в дизайнере не загружен плагин кнопок. Хотя раньше был загружен - приложение старое, работающее, распространяемое. Что опять за? Похоже на
другой глюк с плагинами. Но сообщение об ошибке при загрузке плагина совсем другое:
undefined symbol: _ZN10<имя_плагина>16staticMetaObjectE
Поиск в Интернете намёков не дал, точнее нашёл пару похожих сообщений, но то что там приводилось у меня отсутствует. Более того - рядом лежит плагин, построенный по точно такой же схеме, его проект и исходники отличаются только именами файлов, глобальными именами и содержимым классов виджетов, и он нормально загрузился. Ну то есть, если бы ошибка была в плагине, она была бы в обоих.
Тут я вижу, что не загрузился также плагин окна, который я не доделал. Хотя файл плагина собрал, и он лежит в каталоге плагинов дизайнера. Но в сообщении о нём... присутствует почему-то и плагин кнопки. Удаляю недоделанный плагин, перезапускаю QtCreator.
Плагин кнопки загрузился, работает. Вот же блин горелый!!! Если не грузится какой-то плагин в дизайнер - то не грузятся и плагины которые он использует. Даже отдельно не грузит. Не, я конечно понимаю что при загрузке ведущего плагина, если он не грузится, то не загрузятся его ведомые. Но ведь QtCreator должен грузить
все плагины из своего каталога по-отдельности. То есть потом или перед этим он должен был бы загрузить плагин кнопки
отдельно. Дуля с маком.
Помечаю сразу [РЕШЕНО] и оставляю на случай если кто-то с подобным столкнётся.