Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#52495 closed defect (worksforme)

webkit2-gtk +quartz: undefined symbols error

Reported by: aque (Allan Que) Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: jeremyhu (Jeremy Huddleston Sequoia), Schamschula (Marius Schamschula), e-t-h-a-n, p-bro, EdHarry, Bachsau (Bachsau), grimreaper (Eitan Adler)
Port: webkit2-gtk

Description

I get an error building webkit2-gtk with +quartz under 10.12.

:info:build Undefined symbols for architecture x86_64:
:info:build   "WebCore::GLContext::createSharingContext(WebCore::PlatformDisplay&)", referenced from:
:info:build       WebCore::PlatformDisplay::sharingGLContext() in libWebCorePlatformGTK.a(PlatformDisplay.cpp.o)
:info:build ld: symbol(s) not found for architecture x86_64
:info:build clang: error: linker command failed with exit code 1 (use -v to see invocation)
:info:build make[2]: *** [lib/libwebkit2gtk-4.0.37.14.7.dylib] Error 1

Running Xcode 8.0 (8A218a). I tried rm -rf /opt/local and got the same results.

Attachments (2)

main.log.gz (6.5 MB) - added by aque (Allan Que) 8 years ago.
main.log.2.gz (6.6 MB) - added by aque (Allan Que) 8 years ago.
webkit2-gtk-devel main.log

Change History (24)

Changed 8 years ago by aque (Allan Que)

Attachment: main.log.gz added

comment:1 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Does webkit2-gtk-devel build for you? I'll probably be updating webkit2-gtk to that version soon.

comment:2 Changed 8 years ago by aque (Allan Que)

webkit2-gtk-devel also fails with the same error.

Changed 8 years ago by aque (Allan Que)

Attachment: main.log.2.gz added

webkit2-gtk-devel main.log

comment:3 Changed 8 years ago by e-t-h-a-n

Cc: ethansherriff@… added

Cc Me!

comment:4 Changed 8 years ago by dbevans (David B. Evans)

Has duplicate #52501.

comment:5 Changed 8 years ago by p-bro

I have the same error on El Capitan (10.11.6).

comment:6 Changed 8 years ago by p-bro

Cc: p.bro@… added

Cc Me!

comment:7 Changed 8 years ago by EdHarry

Cc: e.f.harry@… added

Cc Me!

comment:8 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Owner: changed from macports-tickets@… to jeremyhu@…
Status: newassigned

comment:9 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

The call site in WebCore/platform/graphics/PlatformDisplay.cpp is:

#if !PLATFORM(EFL)
GLContext* PlatformDisplay::sharingGLContext()
{
    if (!m_sharingGLContext)
        m_sharingGLContext = GLContext::createSharingContext(*this);
    return m_sharingGLContext.get();
}
#endif

The declaration in WebCore/platform/graphics/GLContext.h is:

namespace WebCore {

class GLContext {
...
public:
...
    static std::unique_ptr<GLContext> createSharingContext(PlatformDisplay&);

Looking in WebCore/platform/graphics/GLContext.cpp, it looks like it's only relevant for either GLX, EGL, or Wayland, so this should just not be used.

r154013 should fix the build by disabling this codepath.

comment:10 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: fixed
Status: assignedclosed

comment:11 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: fixed
Status: closedreopened

comment:12 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Keywords: sierra removed
Owner: changed from jeremyhu to devans
Status: reopenedassigned

comment:13 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

devans reproduced in #52688, so he can probably figure out the fix. I'm not sure why the change I made didn't address the problem, but we should just be disabling WebGL support on +quartz. Can you investigate how to do that and why the r154013 change didn't have that effect?

comment:14 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Cc: Schamschula added

comment:15 Changed 8 years ago by dbevans (David B. Evans)

Cc: web@… added
Owner: changed from devans to dbevans
Status: assignedaccepted
Version: 2.3.4

Will take a look. CCing email reporter of #52688.

comment:16 Changed 8 years ago by grimreaper (Eitan Adler)

Cc: grimreaper added

comment:17 Changed 8 years ago by dbevans (David B. Evans)

Cc: dbevans removed

comment:18 Changed 8 years ago by dbevans (David B. Evans)

Summary: webkit2-gtk @2.14.0+quartz: undefined symbols error under Sierrawebkit2-gtk @2.14.0+quartz: undefined symbols error

Just to be clear, this is not a Sierra specific issue. Has been reproduced on El Capitan and I suspect others as well.

comment:19 Changed 8 years ago by p-bro

The error persists with @2.14.1_0+quartz. You may want to consider updating the bug summary.

Last edited 8 years ago by p-bro (previous) (diff)

comment:20 Changed 8 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Summary: webkit2-gtk @2.14.0+quartz: undefined symbols errorwebkit2-gtk +quartz: undefined symbols error

comment:21 Changed 8 years ago by dbevans (David B. Evans)

Resolution: worksforme
Status: acceptedclosed

webkit2-gtk updated to version 2.14.2 in commit 134b99f. webkit2-gtk +quartz now builds successfully for me using Xcode 8.1 on both 10.12.2 public beta and 10.11.5. Should build on 10.10 and 10.9 as well. Not supported on earlier versions.

Please update your ports tree and rebuild.

comment:22 Changed 8 years ago by g5pw (Aljaž Srebrnič)

Indeed it now builds fine for me. Thanks!

Note: See TracTickets for help on using tickets.