Bug 109373 (Linux32BuildFailed) - QtWebkit build failed on Ubuntu 12.04 32-bit
Summary: QtWebkit build failed on Ubuntu 12.04 32-bit
Status: RESOLVED INVALID
Alias: Linux32BuildFailed
Product: WebKit
Classification: Unclassified
Component: WebKit Qt (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Critical
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-10 00:01 PST by Sergey Lenski
Modified: 2013-02-19 04:27 PST (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Lenski 2013-02-10 00:01:38 PST
I couldn’t build the last Webkit + QT5 on Ubuntu 12.04 32-bit.

I tried to build QtWebKit accroding to: http://trac.webkit.org/wiki/BuildingQtOnLinux .

On Ubuntu 12.04 64-bit build was successful but on 32-bit build failed.

QT

QT5 was build successfully with https://github.com/ossy-szeged/qt5-tools/blob/master/build-qt5.sh
The result was the same when I tried to build WebKit with http://releases.qt-project.org/qt5/5.0.1/qt-linux-opensource-5.0.1-x86-offline.run

WEBKIT

http://nightly.webkit.org/
Nightly build: WebKit-r141714

ENVIRONMENT

The environment variables seem to be correct: 
QTDIR and PATH were set according to the instruction

QTDIR=/home/zaq/work/qt5-tools/qt5/qtbase
PATH=$QTDIR/bin:$PATH
QMAKE

qmake -v
QMake version 3.0
Using Qt version 5.0.0 in /home/zaq/work/qt5-tools/qt5/qtbase/lib

ERROR MESSAGES
…
/home/zaq/work/rtc/WebKit-r141714/WebKit.pro:21: ‘use?’ is not a recognized test function.
/home/zaq/work/rtc/WebKit-r141714/WebKit.pro:31: ‘build?’ is not a recognized test function.
/home/zaq/work/rtc/WebKit-r141714/WebKit.pro:37: ‘build?’ is not a recognized test function.
…

/home/zaq/work/rtc/WebKit-r141714/Source/WTF/WTF.pri:23: ‘use?’ is not a recognized test function.
…
../../../../Source/WTF/wtf/NullPtr.h:52:1: warning: identifier ‘nullptr’ will become a keyword in C++0x [-Wc++0x-compat]
In file included from ../../../../Source/WTF/wtf/WTFThreadData.h:36:0, from ../../../../Source/WTF/wtf/DataLog.cpp:30:
../../../../Source/WTF/wtf/ThreadSpecific.h:216:2: error: #error ThreadSpecific is not implemented for this platform.
../../../../Source/WTF/wtf/ThreadSpecific.h:238:2: error: #error ThreadSpecific is not implemented for this platform.
…

I suppose the first problem is that qmake cannot process pro-files commands like 
use?(3D_GRAPHICS) {
Comment 1 Sergey Lenski 2013-02-16 09:48:07 PST
Is it possible to build WebKit on Linux 32-bit?
Comment 2 Eric Seidel (no email) 2013-02-16 09:50:27 PST
I suspect the vast majority of the people you CC'd know nothing about this issue.
Comment 3 Allan Sandfeld Jensen 2013-02-16 14:35:23 PST
(In reply to comment #1)
> Is it possible to build WebKit on Linux 32-bit?

Yes. It looks like in your case the automatic setup of QMAKEPATH is not working for some reason. Try compiling with QMAKEPATH explicitly set to $WEBKITDIR$/Tools/qmake.
Comment 4 Sergey Lenski 2013-02-17 11:19:18 PST
Allan thanks a lot for your reply!

I set explicitly QMAKEPATH to $WEBKITDIR$/Tools/qmake as you advised. 
The errors described above disappeared but another error occurred during compilation:
 /home/zaq/work/WebKit-r143127/Source/WebKit2/UIProcess/API/qt/qwebnavigationhistory.cpp
rm -f libWebKit2QML.a
ar cruT libWebKit2QML.a UIProcess/API/qt/qwebnavigationhistory.o
make[2]: Leaving directory `/home/zaq/work/WebKit-r143127/WebKitBuild/Release/Source/WebKit2'
make[1]: Leaving directory `/home/zaq/work/WebKit-r143127/WebKitBuild/Release/Source/WebKit2'
cd Source/ && ( test -f Makefile.QtWebKit || /home/zaq/work/qt5-tools/qt5/qtbase/bin/qmake /home/zaq/work/WebKit-r143127/Source/QtWebKit.pro CONFIG-=production_build -o Makefile.QtWebKit ) && make -f Makefile.QtWebKit 
make[1]: Entering directory `/home/zaq/work/WebKit-r143127/WebKitBuild/Release/Source'
( test -f Makefile.api || /home/zaq/work/qt5-tools/qt5/qtbase/bin/qmake /home/zaq/work/WebKit-r143127/Source/api.pri CONFIG-=production_build -o Makefile.api ) && make -f Makefile.api 
Project ERROR: Project has no top-level .qmake.conf file.
make[1]: *** [sub-api-pri-make_first-ordered] Error 3
make[1]: Leaving directory `/home/zaq/work/WebKit-r143127/WebKitBuild/Release/Source'
make: *** [sub-Source-QtWebKit-pro-make_first-ordered] Error 2
Comment 5 Allan Sandfeld Jensen 2013-02-17 11:40:03 PST
(In reply to comment #4)
> Allan thanks a lot for your reply!
> 
> I set explicitly QMAKEPATH to $WEBKITDIR$/Tools/qmake as you advised. 
> The errors described above disappeared but another error occurred during compilation:

> Project ERROR: Project has no top-level .qmake.conf file.

I think that is the problem. If I am not mistaken it is also the .qmake.conf file that sets the QMAKEPATH. Maybe you lost deleted it by accident?
Comment 6 Sergey Lenski 2013-02-18 10:56:11 PST
No I didn't delete anything.
I tried to build nightly build archive r143127 2013-02-17.
The problem occurs on 32-bit Ubuntu 12.04
but on 64-bit Ubuntu 12.04 the same package was build successfully.
Comment 7 Sergey Lenski 2013-02-18 11:18:49 PST
Please advise.
Comment 8 Jocelyn Turcotte 2013-02-19 04:27:19 PST
(In reply to comment #6)
> No I didn't delete anything.
> I tried to build nightly build archive r143127 2013-02-17.

Those archives are created by Apple and don't contain everything needed to build the Qt port (.qmake.conf at least is missing).

Please use the official git or svn repository if you want trunk, or use the qtwebkit module bundled with Qt5 if you want the latest release.