Russian Qt Forum
Ноябрь 23, 2024, 23:45 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Проблема с QXT под Visual Studio 2008  (Прочитано 2237 раз)
lexrova
Гость
« : Июль 30, 2012, 14:33 »

Добрый день.

при qxt сборке использовал следующие параметры:

Код:
configure -prefix Path -debug_and_release
nmake && nmake install

QT собирался со следующими параметрами (Qt 4.8.2):
(Предварительно подредактировал win32-msvc2008\qmake.conf

Код:
QMAKE_CFLAGS_RELEASE    = -O2 -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi

на

Код:
QMAKE_CFLAGS_RELEASE    = -O2 -MT
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MT -Zi


Не уверен, что это обязательно было делать при -static см.ниже)

Код:
configure -static -debug-and-release -opensource
nmake

Всё собралось отлично.

Cоответственно, плагин для интеграции с VS установлен и настроен на текущую версию (4.8.2)

Сырцы qt и qxt брал из:
http://dev.libqxt.org/libqxt/downloads - 0.6.2
http://qt.nokia.com/downloads/ - Qt libraries 4.8.2 for Windows (VS 2008, 234 MB)

Далее, создаем проект Qt Application в MSVC2008.
Настройку проекта делал по инструкции сайта сырцов qxt ну и + конечно \MT - релиз и \MDd -дебаг

Код:
#include <QxtListWidget>
...
QxtListWidget* lw = new QxtListWidget;


Выдает следующее:

Код:
1>test.obj : warning LNK4217: locally defined symbol ??0QxtListWidget@@QAE@PAVQWidget@@@Z (public: __thiscall QxtListWidget::QxtListWidget(class QWidget *)) imported in function "public: __thiscall test::test(class QWidget *,class QFlags<enum Qt::WindowType>)" (??0test@@QAE@PAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z)
1>test.obj : warning LNK4217: locally defined symbol ??1QxtListWidget@@UAE@XZ (public: virtual __thiscall QxtListWidget::~QxtListWidget(void)) imported in function "public: virtual void * __thiscall QxtListWidget::`scalar deleting destructor'(unsigned int)" (??_GQxtListWidget@@UAEPAXI@Z)
1>QxtGui.lib(moc_qxtitemdelegate.obj) : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static struct QMetaObject const Qxt::staticMetaObject" (__imp_?staticMetaObject@Qxt@@2UQMetaObject@@B) referenced in function "void __cdecl `dynamic initializer for 'qt_meta_extradata_QxtItemDelegate''(void)" (??__Eqt_meta_extradata_QxtItemDelegate@@YAXXZ)
Шокированный Непонимающий

Если берем, например что-нибудь из QxtCore:

Код:
#include <QxtPipe>
...
QxtPipe* p  = new QxtPipe

Выдает следующее:
Код:
1>test.obj : warning LNK4217: locally defined symbol ??0QxtPipe@@QAE@PAVQObject@@@Z (public: __thiscall QxtPipe::QxtPipe(class QObject *)) imported in function "public: __thiscall test::test(class QWidget *,class QFlags<enum Qt::WindowType>)" (??0test@@QAE@PAVQWidget@@V?$QFlags@W4WindowType@Qt@@@@@Z)
1>test.obj : warning LNK4217: locally defined symbol ??1QxtPipe@@UAE@XZ (public: virtual __thiscall QxtPipe::~QxtPipe(void)) imported in function "public: virtual void * __thiscall QxtPipe::`scalar deleting destructor'(unsigned int)" (??_GQxtPipe@@UAEPAXI@Z)
- Нет ошибок, только предупреждения. Непонимающий

Да, и все проекты с использованием голого Qt работают отлично.


« Последнее редактирование: Июль 30, 2012, 15:03 от lexrova » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.321 секунд. Запросов: 20.