[Development] [Qt][Texmap] Error of cross-compiling webkit with Qt 4.8.1

Fang Bao Fang.Bao at arm.com
Thu Apr 19 09:18:47 CEST 2012


Hi,

I’m trying to cross-compile latest webkit with Qt 4.8.1 and Qt5.0 alpha.
There is a cross-compiling error in "TextureMapperGL.cpp" on building with Qt 4.8.1, not appearing on building with Qt 5.0 alpha.

Here is the details:
================================================================
WebKit revision:   r114348
WebKit port:       Qt
Qt version:        4.8.1 for Linux/X11, download from http://qt.nokia.com/downloads/linux-x11-cpp
================================================================
Host OS:           Ubuntu 11.10 amd64
Host Platform:     Desktop PC (Intel(R) Q8400)
Target OS:         Ubuntu 11.10 armel
Target Platform:   Pandaboard (OMAP4430, ARMv7 Processor rev 2)
Toolchain:         arm-linux-gnueabi-gcc (crosstool-NG linaro-1.13.1+bzr - Linaro GCC 2012.03) 4.6.3
================================================================
Qt configuration from qconfig.pri:

CONFIG +=  def_files_disabled exceptions no_mocdepend release stl qt_no_framework
QT_ARCH = arm
QT_EDITION = OpenSource
QT_CONFIG +=  minimal-config small-config medium-config large-config full-config phonon phonon-backend accessibility egl openvg opengl opengles2 reduce_exports ipv6 clock-gettime clock-monotonic mremap getaddrinfo ipv6ifname getifaddrs inotify png system-freetype zlib nis cups iconv glib gstreamer dbus openssl x11sm xshape xvideo xsync xrender mitshm fontconfig xkb alsa pulseaudio icu concurrent xmlpatterns multimedia audio-backend svg script scripttools declarative release
================================================================
Webkit command invoked:

webkit_git/Tools/Scripts/build-webkit --qt --release --makeargs="-j5" --no-3d-canvas --media-statistics
================================================================
The output of error:

In file included from /home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/glx.h:45:0,
                 from /home/work/opensource/webkit/source/webkit_git/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp:43:
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:168:17: error: conflicting declaration ‘typedef double GLdouble’
/home/work/board_sync/Trolltech/Qt4/Qt-4.8.1/include/QtOpenGL/qgl.h:85:17: error: ‘GLdouble’ has a previous declaration as ‘typedef GLfloat GLdouble’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1667:23: error: expected type-specifier before ‘glBlendEquation’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1667:23: error: expected initializer before ‘glBlendEquation’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1669:23: error: expected type-specifier before ‘glBlendColor’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1669:23: error: expected initializer before ‘glBlendColor’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1859:23: error: expected type-specifier before ‘glActiveTexture’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1859:23: error: expected initializer before ‘glActiveTexture’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1950:23: error: expected type-specifier before ‘glSampleCoverage’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:1950:23: error: expected initializer before ‘glSampleCoverage’
In file included from /home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/gl.h:2091:0,
                 from /home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/glx.h:45,
                 from /home/work/opensource/webkit/source/webkit_git/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp:43:
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/glext.h:5072:19: error: conflicting declaration ‘typedef ptrdiff_t GLintptr’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GLES2/gl2.h:38:26: error: ‘GLintptr’ has a previous declaration as ‘typedef khronos_intptr_t GLintptr’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GL/glext.h:5073:19: error: conflicting declaration ‘typedef ptrdiff_t GLsizeiptr’
/home/work/board_sync/rootfs_panda_ubuntu_1110/usr/include/GLES2/gl2.h:39:26: error: ‘GLsizeiptr’ has a previous declaration as ‘typedef khronos_ssize_t GLsizeiptr’
make[3]: *** [obj/release/TextureMapperGL.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory `/home/work/board_sync/rootfs_panda_ubuntu_1110/home/work/board_sync/WebKit/WebKit-114348_Qt-4.8.1/Release/Source/WebCore'
make[2]: *** [sub-Target-pri-make_default-ordered] Error 2
make[2]: Leaving directory `/home/work/board_sync/rootfs_panda_ubuntu_1110/home/work/board_sync/WebKit/WebKit-114348_Qt-4.8.1/Release/Source/WebCore'
make[1]: *** [sub-Source-WebCore-WebCore-pro-make_default-ordered] Error 2
make[1]: Leaving directory `/home/work/board_sync/rootfs_panda_ubuntu_1110/home/work/board_sync/WebKit/WebKit-114348_Qt-4.8.1/Release'
make: *** [incremental] Error 2
================================================================
GCC command invoked could be found in attachment of https://bugs.webkit.org/show_bug.cgi?id=84321

================================================================

Because this error doesn't appear on building with Qt 5.0 alpha, I'm not sure whether the latest WebKit could support Qt 4.8.
Or did TextureMapperGL not support Qt4.8 on OpenGL ES2 platform?

Anyone could help it?

PS: I have filed a Bug 84321 on WebKit Bugzilla (https://bugs.webkit.org/show_bug.cgi?id=84321).

Best Regards,
Fang Bao


-- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium.  Thank you.


More information about the Development mailing list