Bug 131267 - [GTK] [Stable] fails to build with --disable-webgl --disable-accelerated-compositing
Summary: [GTK] [Stable] fails to build with --disable-webgl --disable-accelerated-comp...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-05 06:00 PDT by Pacho Ramos
Modified: 2014-12-09 10:44 PST (History)
12 users (show)

See Also:


Attachments
build.log.bz2 (368.69 KB, application/x-bzip)
2014-04-05 06:02 PDT, Pacho Ramos
no flags Details
Patch (1.12 KB, patch)
2014-06-12 05:02 PDT, Alberto Garcia
no flags Details | Formatted Diff | Diff
Patch (1.15 KB, patch)
2014-06-12 05:34 PDT, Alberto Garcia
no flags Details | Formatted Diff | Diff
build.log (297.71 KB, application/x-xz)
2014-07-18 02:24 PDT, Pacho Ramos
no flags Details
Fix compilation with --disable-webgl (581 bytes, patch)
2014-10-14 02:23 PDT, Alexander Tsoy
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Pacho Ramos 2014-04-05 06:00:39 PDT
The error is:
 -Wl,--no-demangle -o Programs/DumpRenderTree Source/WebCore/platform/gtk/Programs_DumpRenderTree-GtkVersioning.o Tools/DumpRenderTree/Programs_DumpRenderTree-DumpRenderTreeCommon.o Tools/DumpRenderTree/Programs_DumpRenderTree-AccessibilityController.o Tools/DumpRenderTree/Programs_DumpRenderTree-AccessibilityTextMarker.o Tools/DumpRenderTree/Programs_DumpRenderTree-AccessibilityUIElement.o Tools/DumpRenderTree/Programs_DumpRenderTree-CyclicRedundancyCheck.o Tools/DumpRenderTree/Programs_DumpRenderTree-GCController.o Tools/DumpRenderTree/Programs_DumpRenderTree-TestRunner.o Tools/DumpRenderTree/Programs_DumpRenderTree-PixelDumpSupport.o Tools/DumpRenderTree/Programs_DumpRenderTree-WorkQueue.o Tools/DumpRenderTree/atk/Programs_DumpRenderTree-AccessibilityCallbacksAtk.o Tools/DumpRenderTree/atk/Programs_DumpRenderTree-AccessibilityControllerAtk.o Tools/DumpRenderTree/atk/Programs_DumpRenderTree-AccessibilityUIElementAtk.o Tools/DumpRenderTree/cairo/Programs_DumpRenderTree-PixelDumpSupportCairo.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-AccessibilityControllerGtk.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-AccessibilityUIElementGtk.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-DumpRenderTree.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-EditingCallbacks.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-EventSender.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-GCControllerGtk.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-TestRunnerGtk.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-PixelDumpSupportGtk.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-SelfScrollingWebKitWebView.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-TextInputController.o Tools/DumpRenderTree/gtk/Programs_DumpRenderTree-WorkQueueItemGtk.o -Wl,--export-dynamic -pthread -pthread  -Wl,--as-needed ./.libs/libjavascriptcoregtk-1.0.so ./.libs/libwebkitgtk-1.0.so -L/usr/lib64 /var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/.libs/libjavascriptcoregtk-1.0.so -lpthread -lenchant -lgeoclue -ldbus-glib-1 -ldbus-1 -lgstapp-1.0 -lgstaudio-1.0 -lgstfft-1.0 -lgstpbutils-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -ljpeg -lsecret-1 -lxslt -lrt -lxml2 -lGL -lEGL -ldl -lpng16 -lsqlite3 -licui18n -licuuc -licudata -lwebp -lXcomposite -lXdamage -lXfixes -lz ./.libs/libPlatform.a ./.libs/libPlatformGtk.a ./.libs/libWebCorePlatform.a ./.libs/libWebCoreModules.a ./.libs/libWebCoreInternals.a -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangoft2-1.0 -lpango-1.0 -lgmodule-2.0 -lgthread-2.0 -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lcairo -lfontconfig -lfreetype -lharfbuzz-icu -lharfbuzz -lXrender -lXt -lX11 -pthread -Wl,-rpath -Wl,/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/.libs
./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN3JSC21GenericTypedArrayViewINS_14Float32AdaptorEE6createEj'
./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore19openGLFunctionTableEv'
./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore21initializeOpenGLShimsEv'
collect2: error: ld returned 1 exit status
make[1]: *** [Programs/GtkLauncher] Error 1
make[1]: *** Waiting for unfinished jobs....
./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN3JSC21GenericTypedArrayViewINS_14Float32AdaptorEE6createEj'
./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore19openGLFunctionTableEv'
./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore21initializeOpenGLShimsEv'
collect2: error: ld returned 1 exit status
make[1]: *** [Programs/DumpRenderTree] Error 1
Source/WebKit/gtk/webkit/webkitversion.h:37: Warning: WebKit: symbol='WEBKITGTK_API_VERSION': Unknown namespace for symbol 'WEBKITGTK_API_VERSION'
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/tmp-introspect5b0QUp/WebKit-1.0.c:1:0: note: this is the location of the previous definition
/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN3JSC21GenericTypedArrayViewINS_14Float32AdaptorEE6createEj'
/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore19openGLFunctionTableEv'
/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore21initializeOpenGLShimsEv'
collect2: error: ld returned 1 exit status
linking of temporary binary failed: Command '['/bin/sh', './libtool', '--mode=link', '--tag=CC', '--silent', 'x86_64-pc-linux-gnu-gcc', '-o', '/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/tmp-introspect5b0QUp/WebKit-1.0', '-export-dynamic', '-march=native', '-pipe', '-O2', '-g', '-pthread', '-std=c99', '-D_FORTIFY_SOURCE=2', '-Wno-deprecated-declarations', '-Wl,-O1', '-Wl,--as-needed', '-Wl,--hash-style=gnu', '-Wl,--no-keep-memory', '-Wl,--reduce-memory-overheads', '-Wl,--no-demangle', '/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6/tmp-introspect5b0QUp/WebKit-1.0.o', '-L.', '-lwebkitgtk-1.0', '-ljavascriptcoregtk-1.0', '-Wl,--export-dynamic', '-lgmodule-2.0', '-pthread', '-lgtk-x11-2.0', '-lgdk-x11-2.0', '-lpangocairo-1.0', '-latk-1.0', '-lcairo', '-lgdk_pixbuf-2.0', '-lpangoft2-1.0', '-lpango-1.0', '-lfreetype', '-lfontconfig', '-lsoup-2.4', '-lgio-2.0', '-lgobject-2.0', '-lglib-2.0']' returned non-zero exit status 1
make[1]: *** [WebKit-1.0.gir] Error 1
make[1]: Leaving directory `/var/tmp/notmpfs/portage/net-libs/webkit-gtk-2.2.6-r200/work/webkitgtk-2.2.6'
make: *** [all] Error 2
Comment 1 Pacho Ramos 2014-04-05 06:02:06 PDT
Created attachment 228670 [details]
build.log.bz2

Full build.log
Comment 2 Pacho Ramos 2014-06-03 23:48:09 PDT
2.4.3 is still affected by this
Comment 3 Alberto Garcia 2014-06-12 05:00:34 PDT
Updating title since this also affects the master branch.
Comment 4 Alberto Garcia 2014-06-12 05:02:13 PDT
Created attachment 232946 [details]
Patch

Here's the patch.

Thanks for the report and sorry for having taken so long to fix it!
Comment 5 Alberto Garcia 2014-06-12 05:34:05 PDT
Created attachment 232947 [details]
Patch

That patch was incomplete, here's a new one.
Comment 6 Alberto Garcia 2014-06-12 06:14:48 PDT
Note for Carlos: for the 2.4 branch we can use my first patch, since the <runtime/JSCInlines.h> header does not exist there and is not necessary (I've just checked it).
Comment 7 WebKit Commit Bot 2014-06-12 07:08:10 PDT
Comment on attachment 232947 [details]
Patch

Clearing flags on attachment: 232947

Committed r169896: <http://trac.webkit.org/changeset/169896>
Comment 8 WebKit Commit Bot 2014-06-12 07:08:16 PDT
All reviewed patches have been landed.  Closing bug.
Comment 9 Pacho Ramos 2014-07-18 02:24:14 PDT
Created attachment 235118 [details]
build.log

Looks to still affect our users with a similar error and 2.4.4 (that supposedly should fix this :/)
Comment 10 Pacho Ramos 2014-07-18 02:24:33 PDT
.
Comment 11 Alexander Tsoy 2014-10-14 02:23:02 PDT
Created attachment 239788 [details]
Fix compilation with --disable-webgl

(In reply to comment #4)
> Created an attachment (id=232946) [details]
> Patch
> 
> Here's the patch.
> 
> Thanks for the report and sorry for having taken so long to fix it!

Thanks! But your patch fixes only the first error:

./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN3JSC21GenericTypedArrayViewINS_14Float32AdaptorEE6createEj'


The attached patch fixes the other two:

./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore19openGLFunctionTableEv'
./.libs/libwebkitgtk-1.0.so: undefined reference to `_ZN7WebCore21initializeOpenGLShimsEv'


Note that in my patch USE(3D_GRAPHICS) may be redundant, the following should also work, but I didn't test it:

-#if USE(3D_GRAPHICS) || defined(QT_OPENGL_SHIMS)
+#if USE(EGL) || USE(GLX) || defined(QT_OPENGL_SHIMS)
Comment 12 Alberto Garcia 2014-12-08 02:08:02 PST
I can build 2.4.7 with --disable-webgl --disable-accelerated-compositing using the patch included in bug 137640, so I'll close this one.
Comment 13 Alexander Tsoy 2014-12-08 09:32:09 PST
Hmm.. How about "--enable-egl --disable-webgl" or "--enable-glx --disable-webgl"?
Comment 14 Alberto Garcia 2014-12-09 10:44:57 PST
(In reply to comment #13)
> Hmm.. How about "--enable-egl --disable-webgl" or "--enable-glx
> --disable-webgl"?

That one fails here. In practice there are probably several
combination of flags that fail to build since we cannot test them all,
but if you tell us the use case and the exact configuration that you
are trying to build we can try to see how to solve it.