Getting error: Unknown module(s) in QT: webkitwidgets in QT 5.2.1 in Ubutu 12.04
I have built Qt 5 libs from source into Ubuntu 12.04 and made a Qt test app. In .pro file I have written QT += core gui webkitwidgets to use Qwebview in my test project.
But when I run qmake into Qt creator then it gives me error: Unknown module(s) in QT: webkitwidgets.
I think webkit or webkitwidgets module is not build by source when I built Qt 5 libs from source In Ubutnu 12.04.
So how can I build qtwebkit or webkitwdgtes module from source or anybody who has idea about the issue then please let me know.
You should be able to do that with:
cd qtwebkit qmake make -jX where X is number of cores * 2 + 1
Ok, Thanks for reply. But when I run make -jX where X is number of cores * 2 + 1 command, it gives me the below errors.
StringImpl.cpp:(.text+0x64ad): undefined reference to
u_strToUpper_51' StringImpl.cpp:(.text+0x6547): undefined reference tou_strToUpper_51'
StringImpl.cpp:(.text+0x6636): undefined reference to
u_toupper_51' StringImpl.cpp:(.text+0x66fc): undefined reference tou_toupper_51'
DatePrototype.cpp:(.text+0x328): undefined reference to
udat_open_51' DatePrototype.cpp:(.text+0x35a): undefined reference toudat_format_51'
DatePrototype.cpp:(.text+0x366): undefined reference to
udat_close_51' JSGlobalObjectFunctions.cpp:(.text+0x99f): undefined reference tou_charType_51'
Base64.cpp:(.text+0x840): undefined reference to
u_charDirection_51' StringImpl.cpp:(.text+0xa00): undefined reference tou_foldCase_51'
CollatorICU.cpp:(.text+0x1f1): undefined reference to
ucol_getLocaleByType_51' CollatorICU.cpp:(.text+0x20f): undefined reference toucol_getAttribute_51'
CollatorICU.cpp:(.text+0x25b): undefined reference to
ucol_open_51' CollatorICU.cpp:(.text+0x27f): undefined reference toucol_open_51'
CollatorICU.cpp:(.text+0x2a4): undefined reference to
ucol_setAttribute_51' CollatorICU.cpp:(.text+0x2c2): undefined reference toucol_setAttribute_5
and many more such undefined reference errors. I think qtwebkit module uses ICU library ( which are missing at my machine ) .
Indeed webkit uses ICU
@SGaist , Thanks for your reply. I have build icu libs from source as per below.
cd source && ./configure --prefix=/usr && make
and install the same by make install, now I am able to get icu libs at path /usr/lib/ but still I am getting the same undefined reference errors when I build qtwebkit module from source.
Just FYI, I was getting by default Qt 4.8.1 compatible .so libs at path /usr/lib/i386-linux-gnu/ in Ubuntu 12.04. But I want make deb of QT 5.2.1 app into Ubuntu 12.04 So I installed QT 5.2.1 installer into Ubuntu 12.04 and then I am able to run the QT 5 app into qt creator successfully.
But when I tried to make deb of the same app then it takes the reference of machine's qt5 libs instead of QT 5 which I installed from installer.
So that is why I build QT 5.2.1 from source but I got issues regarding webkitwidget when I run my app into Qt creator using Qt 5.2.1 ( which I have build from source ). Then I tried to build qtwebkit and got undefined reference errors which I have mentioned above in my post.
You should take a look at the linux deployment guide to see how you can distribute a Qt application. Then you'll have to apply this to you deb package.
Thanks for your reply.
Is it possible to make Debian package of Qt 5.2.1 app into Ubuntu 12.04, 32 bit machine ?
Out of curiosity, why not use the system installed Qt ?