Hi,

Thanks for all at Webkit-help mailing list for your support.

For building Webkit-QT port for ARM, I built QtEmbedded-4.5.2 for ARM, pointed the QTDIR variable to this location and
changed the PATH variable also accordingly.
I also had to crosscompile libraries like freetype, fontconfig, libxml etc also for ARM. Then I was able to successfully build Webkit for ARM using "build-webkit --qt".

A couple of tips for anyone out there who is having a tough time building webkit on ARM

1) While building Qt-Embedded Linux
        i)  make sure that the PATH variable points correctly to the
'bin' folderof your cross-tool chain folder, for example
*export PATH=/opt/ptxdist-0.10.4/gcc-4.0.2-glibc-2.3.6/arm-softfloat-linux-gnu/bin:$PATH*

       ii) invoke configure with
*./configure -embedded arm -xplatform qws/linux-arm-g++ -L /opt/ptxdist-0.10.4/gcc-4.0.2-glibc-2.3.6/arm-softfloat-linux-gnu/lib -make tools*
Only then libQtUiTools will be built which is required for building webkit
(P.S the default configuration of Qt-embedded linux does not build QtUiTools)
*make
sudo make install*

2) While building webkit ensure that QTDIR points to the Qt-embedded directory If your QT version is not up to date, you will get qmake -r unknown option while invoking build-webkit.

*export QTDIR=/usr/local/Trolltech/QtEmbedded-4.5.2-arm
export PATH=$QTDIR/bin:$PATH*
*./WebKitTools/Scripts/build-webkit --qt*


3) while building dependant libraries like freetype, fontconfig, libxml etc
take care that the PATH variable points to the ARM cross-tool-chain bin directory. Also take care that ARM platform is specified while invoking configure script.

*./configure --host=arm-linux --prefix=/usr/local/Trolltech/QtEmbedded-4.5.2-arm.
make
sudo make install*

my experience is that if you give another prefix other than the QT folder, you may get some
linking errors like

/warning: libxml2.so.2, needed by /opt/ptxdist-0.10.4/gcc-4.0.2-glibc-2.3.6/arm-softfloat-linux-gnu/lib/libfontconfig.so, not found
(try using -rpath or -rpath-link)/

in case you get errors like arm-linux-gcc or arm-linux-ranlib not found, while doing make install,
you can edit the libtool file and specify the entire path for the variables
for example
/RANLIB="/opt/ptxdist-0.10.4/gcc-4.0.2-glibc-2.3.6/arm-softfloat-linux-gnu/bin/arm-linux-ranlib"./
invoke make install again

4) when building webkit, you are likely to get some typecast errors like :

/WebKit-r47266/WebKitTools/DumpRenderTree/qt/ImageDiff.cpp:122: error: no matching function for call to 'qMax(qreal&,
double)'/
/difference = qMax(difference, 0.01); -> difference = qMax(difference, 0.01);

/Solution is to modify the line as
d/ifference = qMax(difference, 0.01); -> difference = qMax(difference, qreal(0.01));
/and invoke build-webkit again/
/

Thanks and best regards,
Jil


nkbai baink wrote:
first ,you should export QTDIR variable to the qt version compiled with arm-softfloat-linux-gnu-g++.
then export  PATH=$QTDIR/bin:$PATH
force  build-webkit --qt to use your own qmake ,not the system qmake.
it works when compiling webkit nightly build on my own machine.


_______________________________________________
webkit-help mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-help

Reply via email to