You are not logged in.

#1 2012-11-28 03:56:56

gh403
Member
Registered: 2012-09-15
Posts: 23

Qt Won't Build

That's right, Qt refuses to build straight out of ABS.

Here's the part of the output that matters (the part where it fails smile).

make[4]: Entering directory `/home/georgev/Code/qtpatch/qt/src/qt-everywhere-opensource-src-4.8.3/tools/assistant/tools/assistant'
compiling helpviewer_qwv.cpp
compiling .moc/release-shared/moc_bookmarkmanager.cpp
compiling .moc/release-shared/moc_bookmarkfiltermodel.cpp
compiling .moc/release-shared/moc_bookmarkmanagerwidget.cpp
compiling .moc/release-shared/moc_bookmarkmodel.cpp
compiling .moc/release-shared/moc_centralwidget.cpp
compiling .moc/release-shared/moc_contentwindow.cpp
compiling .moc/release-shared/moc_findwidget.cpp
compiling .moc/release-shared/moc_filternamedialog.cpp
compiling .moc/release-shared/moc_helpenginewrapper.cpp
compiling .moc/release-shared/moc_helpviewer.cpp
compiling .moc/release-shared/moc_helpviewer_p.cpp
compiling .moc/release-shared/moc_indexwindow.cpp
compiling .moc/release-shared/moc_installdialog.cpp
compiling .moc/release-shared/moc_mainwindow.cpp
compiling .moc/release-shared/moc_preferencesdialog.cpp
helpviewer_qwv.cpp:160:1: error: expected class-name before '{' token
helpviewer_qwv.cpp:165:13: error: 'QWebPage' does not name a type
helpviewer_qwv.cpp:166:32: error: 'WebAction' has not been declared
helpviewer_qwv.cpp:168:42: error: 'QWebFrame' has not been declared
helpviewer_qwv.cpp:169:41: error: 'NavigationType' has not been declared
helpviewer_qwv.cpp: In constructor 'HelpPage::HelpPage(QObject*)':
helpviewer_qwv.cpp:181:7: error: class 'HelpPage' does not have any field named 'QWebPage'
helpviewer_qwv.cpp: At global scope:
helpviewer_qwv.cpp:189:1: error: 'QWebPage' does not name a type
helpviewer_qwv.cpp:199:30: error: variable or field 'triggerAction' declared void
helpviewer_qwv.cpp:199:30: error: 'WebAction' was not declared in this scope
helpviewer_qwv.cpp:199:48: error: expected primary-expression before 'bool'
make[4]: *** [.obj/release-shared/helpviewer_qwv.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory `/home/georgev/Code/qtpatch/qt/src/qt-everywhere-opensource-src-4.8.3/tools/assistant/tools/assistant'
make[3]: *** [sub-assistant-make_default-ordered] Error 2
make[3]: Leaving directory `/home/georgev/Code/qtpatch/qt/src/qt-everywhere-opensource-src-4.8.3/tools/assistant/tools'
make[2]: *** [sub-tools-make_default-ordered] Error 2
make[2]: Leaving directory `/home/georgev/Code/qtpatch/qt/src/qt-everywhere-opensource-src-4.8.3/tools/assistant'
make[1]: *** [sub-assistant-make_default-ordered] Error 2
make[1]: Leaving directory `/home/georgev/Code/qtpatch/qt/src/qt-everywhere-opensource-src-4.8.3/tools'
make: *** [sub-tools-make_default-ordered] Error 2

This... looks weird.  Is this worthy of a bug report?

EDIT:  I suppose I should add that I'm on a x86_64 machine.  The Qt PKGBUILD version is 4.8.3-6

Last edited by gh403 (2012-11-28 04:02:26)

Offline

#2 2012-11-28 06:58:39

itman
Member
From: Switzerland
Registered: 2010-05-21
Posts: 123

Re: Qt Won't Build

qtwebkit installed by any change? remove it - build qt - build/install qtwebkit again...

happy compiling


Asus eeepc 1201N - 4GB and .... archlinux
i5-750                     - 4GB and .... archlinux

Offline

#3 2012-11-28 13:57:49

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 5,912
Website

Re: Qt Won't Build

Build in a clean chroot.


Sakura:-
Mobo: ASUS P8Z77-V PRO // Processor: Intel Core i7-3770K 3.4GHz // GFX: nVidia GeForce GTX 970 Ti // RAM: 32GB (4x 8GB) Corsair DDR3 (@ 2133MHz) // Storage: 1x 3TB Seagate SATAII 5x 1TB Samsung SATAII, 2x 120GB Corsair SSD

Making lemonade from lemons since 2015.

Online

#4 2012-11-28 14:58:59

gh403
Member
Registered: 2012-09-15
Posts: 23

Re: Qt Won't Build

Why does a clean chroot, or removing some dependencies, make a difference?

Offline

#5 2012-11-28 15:28:49

drcouzelis
Member
From: Connecticut, USA
Registered: 2009-11-09
Posts: 3,570
Website

Re: Qt Won't Build

gh403 wrote:

Why does a clean chroot, or removing some dependencies, make a difference?

That surprises me too. I don't understand "building in a clean chroot", but a quick Internet search tells me that building in clean chroot is a policy for all packages built in the repositories. After three years of Arch Linux usage, this is the first I've heard of that concept. tongue

It looks l need to study this document: https://wiki.archlinux.org/index.php/De … ean_Chroot

Does building in a clean chroot only apply to packages in the official repositories? Is it something that makepkg can be setup to do automatically?

Offline

#6 2012-11-28 17:33:39

hussam
Member
Registered: 2006-03-26
Posts: 527
Website

Re: Qt Won't Build

As itman said, pacman -Rdd qtwebkit, build Qt package then pacman -S --asdeps qtwebkit.
I do this whenever there is a new archlinux qt pacakge because I add extra patches.

Offline

#7 2012-11-28 20:13:32

WorMzy
Forum Moderator
From: Scotland
Registered: 2010-06-16
Posts: 5,912
Website

Re: Qt Won't Build

A clean chroot allows you to control what packages header files are available at the time of compilation (any provided by 'base' and 'base-devel' groups, 'sudo', and any packages listed in the depends and make-depends arrays in the PKGBUILD.) The clean chroot method also ensures that you're compiling against the latest libraries available in the repos, and not, e.g. something you installed with make install, then forgot about.

Does building in a clean chroot only apply to packages in the official repositories?

Nope, it works for any PKGBUILD.

Is it something that makepkg can be setup to do automatically?

No, but there's wrapper scripts in the devtools package, as mentioned in that wiki link you posted.

Note that each chroot uses ~700MB each before dependencies are considered, and if you use the devtools scripts, each chroot will be copied for each user that runs a build script. If you have disk space to burn, you could always create a separate partition for the chroots to live on (I have mine in a btrfs subvolume), and if you have a decent amount of RAM (I was doing it with 4, now I have 16), you could even make the user chroot directories tmpfs'.


Sakura:-
Mobo: ASUS P8Z77-V PRO // Processor: Intel Core i7-3770K 3.4GHz // GFX: nVidia GeForce GTX 970 Ti // RAM: 32GB (4x 8GB) Corsair DDR3 (@ 2133MHz) // Storage: 1x 3TB Seagate SATAII 5x 1TB Samsung SATAII, 2x 120GB Corsair SSD

Making lemonade from lemons since 2015.

Online

#8 2012-12-04 15:24:23

Thralas
Member
Registered: 2007-06-26
Posts: 32

Re: Qt Won't Build

So what seems to happen is that /usr/share/qt/mkspecs/modules/qt_webkit_version.pri is sourced during build.

!contains(QT_CONFIG, modular)|contains(QT_ELIGIBLE_MODULES, webkit) {
    QT_CONFIG += webkit
}

This causes assistant to be linked to webkit irrespective of -no-webkit. I'm not familiar at all with Qt, so I've got no idea how to properly fix this. Anyone?

Offline

Board footer

Powered by FluxBB