Доработка Ананаса

Общий форум

Модератор: app

Re: Доработка Ананаса

Сообщение JohnZ » Пн май 12, 2014 1:17 pm

Всем привет !

Собрался Дизайнер, но как-то криво ... Слинковалось почему-то после второго раза ... ?!
Вот лог линковки.
=============================================================================================
link /LIBPATH:"d:\Qt\4.6.1\lib" /LIBPATH:"d:\Qt\4.6.1\lib" /NOLOGO /DEBUG /SUBSYSTEM:CONSOLE /MANIFEST /MANIFESTFILE:"obj\ananas4-designer.intermediate.
manifest" /OUT:..\..\bin\ananas4-designer.exe @C:\Tmp\nm70.tmp
mt.exe -nologo -manifest "obj\ananas4-designer.intermediate.manifest" -outputresource:..\..\bin\ananas4-designer.exe;1

mt.exe : general error c101008d: Failed to write the updated manifest to the resource of file "..\..\bin\ananas4-designer.exe". ?5 C405BAO =09B8 C:070==K9 D09;.

NMAKE : fatal error U1077: '"C:\Program Files\\Microsoft SDKs\Windows\v6.0A\bin\mt.exe"' : return code '0x1f'
Stop.
NMAKE : fatal error U1077: 'D:\VS9\VC\BIN\nmake.exe' : return code '0x2'
Stop.

=======================================
ВТОРОЙ ЗАПУСК
=======================================
D:\ANANAS\ananas-qt4\src\designer>nmake

Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.

D:\VS9\VC\BIN\nmake.exe -f Makefile.Release all

Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.

link /LIBPATH:"d:\Qt\4.6.1\lib" /LIBPATH:"d:\Qt\4.6.1\lib" /NOLOGO /INCR
EMENTAL:NO /SUBSYSTEM:CONSOLE /MANIFEST /MANIFESTFILE:"obj\ananas4-designer.inte
rmediate.manifest" /OUT:..\..\bin\ananas4-designer.exe @C:\Tmp\nm73.tmp
mt.exe -nologo -manifest "obj\ananas4-designer.intermediate.manifest" -o
utputresource:..\..\bin\ananas4-designer.exe;1
D:\VS9\VC\BIN\nmake.exe -f Makefile.Debug all

=============================================================================================
Ес-сно иконок нет, вообще. Даже на тул-баре !? Помогите победить ! Плз ...
Базу не нашло. Вот лог запуска ...

=============================================================================================
2014-05-12 13:01:38 DEBUG dSelectDB read settings for group with name New group0
2014-05-12 13:01:38 DEBUG map[dbpass] =
2014-05-12 13:01:38 DEBUG map[workdir] = D:\ANANAS\ananas-qt4\applications\money\
2014-05-12 13:01:38 DEBUG map[dbhost] = localhost
2014-05-12 13:01:38 DEBUG map[dbtitle] = Ananas-money
2014-05-12 13:01:38 DEBUG map[dbtype] = mysql
2014-05-12 13:01:38 DEBUG map[dbuser] = root
2014-05-12 13:01:38 DEBUG map[dbname] = ananas_money
2014-05-12 13:01:38 DEBUG map[configfile] = D:\ANANAS\ananas-qt4\applications\money\money.cfg
2014-05-12 13:01:38 DEBUG map[dbport] = 0
2014-05-12 13:01:38 DEBUG dSelectDB read settings for group with name New group1
2014-05-12 13:01:43 INFO dSelectDB save settings
2014-05-12 13:01:46 ERROR aDatabase open connection to ananas_money
2014-05-12 13:01:50 INFO CfgForm metadata lang is null
2014-05-12 13:01:50 DEBUG lang = 0
2014-05-12 13:03:07 DEBUG dEditDialog edit form
2014-05-12 13:03:07 DEBUG dEditDialog form file does not exists
2014-05-12 13:03:07 DEBUG dEditDialog create form file from metadata
2014-05-12 13:03:08 DEBUG dEditDialog show formdesigner
=============================================================================================

Сервак MySQL 5.5 Ставился отдельно. Видимо нужно было как-то вручную создать БД Ананаса ?
Что-то об этом было на форуме, попробую поискать ...

Удачи !
JohnZ
 
Сообщения: 26
Зарегистрирован: Пт апр 25, 2014 2:51 pm

Re: Доработка Ананаса

Сообщение app » Пн май 12, 2014 2:03 pm

mt.exe — это multithread support
Не помню зачем он нужен....
Попробуйте отключить, убрав опцию «thread»

./src/designer/formdesigner/formdesigner.pro:3:CONFIG += qt warn_on staticlib qmake_cache thread
Андрей
Аватара пользователя
app
 
Сообщения: 332
Зарегистрирован: Вт фев 24, 2009 5:38 pm

Re: Доработка Ананаса

Сообщение JohnZ » Пн май 12, 2014 3:53 pm

Спасибо, Андрей !

В отладчике студии со старта выдало ошибку - в прицепе.
Иконок в ресурсах так и не находит ... :-(
Плагин в Дизайнере не принимается, почему-то ... :-(
Все опции уже перебралЪ ... Может это из-за версии QT ? (4.6.1)
А на счёт БД подскажи, - надо стартовую создать вручную ? Каким скриптом ?

Удачи !
Вложения
clip_image002.jpg
JohnZ
 
Сообщения: 26
Зарегистрирован: Пт апр 25, 2014 2:51 pm

Re: Доработка Ананаса

Сообщение app » Вт май 13, 2014 8:30 am

Для работы Дизайнера наличие какой-либо базы не трубуется.
Дизайнер сам создает базы. Ему лишь нужен доступ к SQL серверу.
Андрей
Аватара пользователя
app
 
Сообщения: 332
Зарегистрирован: Вт фев 24, 2009 5:38 pm

Re: Доработка Ананаса

Сообщение JohnZ » Чт май 15, 2014 1:56 pm

Собрал в 4-м Ананасе либу и плагины.
После копирования DLL-ки плагина в директорию Дизайнера QT он его не подгружает.
Если посмотреть о загрузке плагинов, то там такая ругань

Cannot load library D:/Qt/4.6.1/plugins/designer/ananasplugin4.dll: Не найден указанный модуль.

Случаем не в курсе, в чём трабл ? Модули (LIB и DLL) есть !
В 3-й QT Дизайнер плагины увидел, а в 4-й пока не хочет :-(

Удачи !
JohnZ
 
Сообщения: 26
Зарегистрирован: Пт апр 25, 2014 2:51 pm

Re: Доработка Ананаса

Сообщение app » Чт май 15, 2014 3:09 pm

Точно не подскажу.
Разве что попробовать заменить
D:/Qt/4.6.1/plugins/designer/ananasplugin4.dll
на
D:\Qt\4.6.1\plugins\designer\ananasplugin4.dll

Опять же в качестве идеи на вскидку — такое сообщение об ошибке может означать, что не может быть найден неупомянутый модуль, требуемый для загрузки ananasplugin4.dll

ну и третья мысль
Код: Выделить всё
./lib/aextensionfactory.cpp:60:    extensionsDirName = qApp->applicationDirPath()+"/extensions";
./lib/aextensionfactory.cpp:62:    extensionsDirName = "/usr/lib/ananas4/extensions";


переменная, значение которой указывает на место нахождения плагинов, если я ни чего не путаю.
Андрей
Аватара пользователя
app
 
Сообщения: 332
Зарегистрирован: Вт фев 24, 2009 5:38 pm

Re: Доработка Ананаса

Сообщение JohnZ » Чт май 15, 2014 4:48 pm

Дык нет-жеж :-) Это ругается "родной" QT-шный дизайнер.
Ананасовский я ещё не пересобрал, т.к. взял для сборки другой дистрибутив, - ananas-labs-qt4-master.zip.
Модули (LIB и DLL) лежат в D:/Qt/4.6.1/plugins/designer/*
Винда вроде-бы правый слэш (/) в путях понимает, не должно это повлиять, по-идее ...
На всякий случай положил их ещё и в D:/Qt/4.6.1/bin/extensions - не помогло :-(
Подозрительно большой размер у этих модулей, в сравнении с "родными" плагинами ...

Удачи !
JohnZ
 
Сообщения: 26
Зарегистрирован: Пт апр 25, 2014 2:51 pm

Re: Доработка Ананаса

Сообщение app » Чт май 15, 2014 4:57 pm

Ананас использует патченый QT дизайнер.
Виджетам Ананаса нужен доступ к метаданным бизнес-схемы, что бы в диалогах дизайнера можно было работать с объектами бизнес-схемы.
Не стоит расчитывать, что немодифицированный QT дизайнер сможет использовать плагины Ананаса.
Андрей
Аватара пользователя
app
 
Сообщения: 332
Зарегистрирован: Вт фев 24, 2009 5:38 pm

Re: Доработка Ананаса

Сообщение JohnZ » Чт май 15, 2014 7:45 pm

Благодарю за ответ.
Андрей, а можно о патче Дизайнера по-подробнее ?
Ведь плагины стандартные, и должны приниматься QT-шным Дизайнером, IMHO ...
И ещё вопрос, - QSA WorkBench в Ананас-Дизайнер добавлен ?
В исходниках я его вызова не нашёл :-(

В догонку - Сборка Дизайнера выдала неудовлетворённые зависимости
===============================================================================
newform.obj : error LNK2019: unresolved external symbol
"__declspec(dllimport) public: __thiscall qdesigner_internal::QDesignerFormBuilder::QDesignerFormBuilder(class QDesignerFormEditorInterface *,enum qdesigner_internal::QDesignerFormBuilder::Mode)"
(__imp_??0QDesignerFormBuilder@qdesigner_internal@@QAE@PAVQDesignerFormEditorInterface@@W4Mode@01@@Z) referenced in function
"private: class QIcon __thiscall NewForm::formPreviewIcon(class QString const &)"
(?formPreviewIcon@NewForm@@AAE?AVQIcon@@ABVQString@@@Z)

qdesigner_actions.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: __thiscall qdesigner_internal::QDesignerFormBuilder::QDesignerFormBuilder(class QDesignerFormEditorInterface *,enum qdesigner_internal::QDesignerFormBuilder::Mode)"
(__imp_??0QDesignerFormBuilder@qdesigner_internal@@QAE@PAVQDesignerFormEditorInterface@@W4Mode@01@@Z)

qdesigner_workbench.obj : error LNK2001: unresolved external symbol
"public: virtual void __thiscall qdesigner_internal::QDesignerIntegration::updateProperty(class QString const &,class QVariant const &)"
(?updateProperty@QDesignerIntegration@qdesigner_internal@@UAEXABVQString@@ABVQVariant@@@Z)

qdesigner_workbench.obj : error LNK2001: unresolved external symbol
"public: virtual void __thiscall qdesigner_internal::QDesignerIntegration::updatePropertyComment(class QString const &,class QString const &)"
(?updatePropertyComment@QDesignerIntegration@qdesigner_internal@@UAEXABVQString@@0@Z)
..\..\bin\ananas4-designer.exe : fatal error LNK1120: 3 unresolved externals
===============================================================================
Эти вызовы в модулях newform.cpp и qdesigner_actions.cpp. Их объявления в Н-файлах в
~\src\designer\formdesigner\private\, которые являются частью "родного" QT-шного Дизайнера.
Я так понимаю, что в эту директорию нужно положить Н-файлы из _установленной_ либы QT ?!
... т.к. в моём случае (либа 4.6.1) они отличаются от тех, что в дистре Ананаса.
И вот вопрос, - как побороть эти неудовлетворённые зависимости ?
Либа QtDesignerComponents4 в конфиге есть, соответственно линкер её видит ...
Предположительно, в линковку нужно добавить ещё какую-то либу от "родного" QT-шного Дизайнера ?!
Заранее благодарен за ответ !

Удачи !
JohnZ
 
Сообщения: 26
Зарегистрирован: Пт апр 25, 2014 2:51 pm

Re: Доработка Ананаса

Сообщение app » Вс май 18, 2014 1:55 pm

Тут я вам уже не помогу, так как непосредственно модификацией дизайнера занимался Валерий.
Смотрите исходники для поиска ответов на ваши вопросы.
Все что было использовано лежит в открытом доступе.
Андрей
Аватара пользователя
app
 
Сообщения: 332
Зарегистрирован: Вт фев 24, 2009 5:38 pm

Пред.След.

Вернуться в Общий форум

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron