crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Собрать wwwidgets под qt 4.6.2
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Andrewshkovskii Дата 19.5.2010, 19:36
  Ну что так, что в <> - одинаково. даже простой проект (в дебаге) типа :

Цитата
TEMPLATE = app
SOURCES += main.cpp
CONFIG += wwwidgets


#include <QtGui/QApplication>
#include <QwwTwoColorIndicator>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QwwTwoColorIndicator id;
    id.show();
    return a.exec();
}

Но этот класс находиться в wwglobal.h, который подключается к каждому классу Qwww
Выдает
Цитата
C:\storage\programming\workspace\testWWW/../../Qt/include/wwWidgets/qwwtwocolorindicator.h:22: undefined reference to `QwwPrivatable::~QwwPrivatable()'


В исходник класса qwwtwocolorindicator.
Цитата
class Q_WW_EXPORT QwwTwoColorIndicator : public QWidget, QwwPrivatable
{...
}

Т.е получается что он не может найти класс QwwPrivatable, хотя он объявлен в qwwglobal.h, который подключается ко всем файлам классов qwww. Возможно что-то просто не собралось.. Хотя примеры собираются и запускаются даже после очисток, пересборок и qmake-ов.
Очень странно.
Litkevich Yuriy Дата 19.5.2010, 19:26
 
Цитата(Andrewshkovskii @ 19.5.2010, 22:40) *
Я так понимаю, это то, что криэйтор из коробки( не SDK) идет собранный из-под VS?
именно так

Цитата(Andrewshkovskii @ 19.5.2010, 22:40) *
#include "wwWidgets/qwwtwocolorindicator.h"
а точно так нужно подключать заголовочник?

(П.С. я ни разу эту коллекцию Высоты не собирал)
Andrewshkovskii Дата 19.5.2010, 18:40
  Я собрал через qmake -spec win32-g++ -r CONFIG+=release, Mingw32-make-install.
Поставились. В дизайнере виджеты появились - в дизайнере криэйтора - нет. Почему?Кинул dll-ки плагина для wwwidgets for designer в папку //QtCreator\lib\qtcreator\plugins\Nokia - не помогло. В информации о плагинах дизайнера в криэйторе отображена ошибка :
Цитата
Модуль 'C:/storage/programming/QtCreator/bin/designer/wwwidgetsplugin.dll' использует несоместимую библиотеку Qt. Ожидается ключ "Windows msvc release full-config", но получен ключ "Windows mingw release full-config"
- Я так понимаю, это из-за того, что криэйтор из коробки( не SDK) идет собранный из-под VS?
Потом пытаюсь собрать проект типа , проект типа

.pro
Цитата
TARGET = testWWW
TEMPLATE = app


SOURCES += main.cpp\
widget.cpp

HEADERS += widget.h
CONFIG += wwwidgets
LIBS += -lwwwidgets4 -LC:\storage\programming\wwWidgets\widgets\release
INCLUDEPATH += C:\storage\programming\Qt\include\wwWidgets \


.h
#ifndef WIDGET_H
#define WIDGET_H

#include <QtGui/QWidget>
#include "wwWidgets/qwwtwocolorindicator.h"
class Widget : public QWidget
{
    Q_OBJECT
    QwwTwoColorIndicator id;
public:
    Widget(QWidget *parent = 0);
    ~Widget();
};

#endif // WIDGET_H


.cpp
#include "widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    this->id.show();
}

Widget::~Widget()
{

}


Получаю вывод линкера
:
Цитата
debug/widget.o:widget.cpp:(.text$_ZN20QwwTwoColorIndicatorD1Ev[QwwTwoColorIndicator::~QwwTwoColorIndicator:-1: error: undefined reference to `QwwPrivatable::~QwwPrivatable()'
:-1: error: collect2: ld returned 1 exit status

Кто-нибудь сталкивался, и что делать?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 16:37