Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: zodiac от Июль 18, 2012, 14:27



Название: Линковка с QtWebKit
Отправлено: zodiac от Июль 18, 2012, 14:27
Добрый день.
У меня появляются ошибки при линковке при добавлении вот такого инклуда:
Код:
#include <QtWebKit/QWebView>
Ошибки такие:
Цитировать
  Creating library webkit-test.lib and object webkit-test.exp
main.cpp.obj : error LNK2001: unresolved external symbol "public: static struct
QMetaObject const QWebPage::staticMetaObject" (?staticMetaObject@QWebPage@@2UQMetaObject@@B)
main.cpp.obj : error LNK2019: unresolved external symbol "public: __thiscall QWebPage::QWebPage(class QObject *)" (??0QWebPage@@QAE@PAVQObject@@@Z) referenced in function "public: void __thiscall QWebPage::`default constructor closure'(void)" (??_FQWebPage@@QAEXXZ)
main.cpp.obj : error LNK2001: unresolved external symbol "public: static struct
QMetaObject const QWebView::staticMetaObject" (?staticMetaObject@QWebView@@2UQMetaObject@@B)
main.cpp.obj : error LNK2019: unresolved external symbol "public: __thiscall QWebView::QWebView(class QWidget *)" (??0QWebView@@QAE@PAVQWidget@@@Z) referenced in function "public: void __thiscall QWebView::`default constructor closure'(void)" (??_FQWebView@@QAEXXZ)
webkit-test.exe : fatal error LNK1120: 4 unresolved externals
Как с этим бороться?
Исходники проекта: http://rghost.ru/39274557
Qt5 из гита, cmake 2.8.8, msvs 2010


Название: Re: Линковка с QtWebKit
Отправлено: zodiac от Июль 18, 2012, 14:41
Хотя, если добавить:
Код:
TARGET_LINK_LIBRARIES( webkit-test G:/git/qt5/qtwebkit/WebKitBuild/Release/lib/QtWebKit5.lib )
последней строкой в CMakeLists.txt, то ошибки уже две и такие:
Цитировать
   Creating library webkit-test.lib and object webkit-test.exp
main.cpp.obj : error LNK2001: unresolved external symbol "public: static struct
QMetaObject const QWebPage::staticMetaObject" (?staticMetaObject@QWebPage@@2UQMetaObject@@B)
main.cpp.obj : error LNK2001: unresolved external symbol "public: static struct
QMetaObject const QWebView::staticMetaObject" (?staticMetaObject@QWebView@@2UQMetaObject@@B)
webkit-test.exe : fatal error LNK1120: 2 unresolved externals


Название: Re: Линковка с QtWebKit
Отправлено: zodiac от Июль 18, 2012, 21:38
По выводу команды
Цитировать
dumpbin.exe /EXPORTS QtWebKit5.lib
заметил, что в списке присутствуют такие записи:
Цитировать
Microsoft (R) COFF/PE Dumper Version 10.00.40219.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file G:\git\qt5\qtwebkit\WebKitBuild\Release\lib\QtWebKit5.lib

File Type: LIBRARY

     Exports
...
?staticMetaObject@QWebPage@@2UQMetaObject@@B (public: static struct QMetaObject const QWebPage::staticMetaObject)
...
?staticMetaObject@QWebView@@2UQMetaObject@@B (public: static struct QMetaObject const QWebView::staticMetaObject)
...

Так что же ему тогда не нравится?


Название: Re: Линковка с QtWebKit
Отправлено: klovin от Июль 30, 2012, 17:13
LNK2001
Q_OBJECT  не написан.