Closed Bug 1349967 Opened 3 years ago Closed 3 years ago

On Ubuntu, building webrender requires a GL library not installed by ./mach bootstrap

Categories

(Core :: Graphics: WebRender, defect)

Unspecified
Linux
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla55

People

(Reporter: bkelly, Assigned: kats)

References

Details

Attachments

(1 obsolete file)

I ran into a link error this morning after updating m-c:

/srv/mozilla-central/third_party/rust/offscreen_gl_context/src/platform/with_glx/native_gl_context.rs:112: error: undefined reference to 'glXGetCurrentContext'

And a lot more.

I tried updating rust and running ./mach bootstrap, but it didn't help.

Kats suggested disabling webrender and that fixed the problem.  Whatever library webrender is depending on here should be added to our build environment setup tools.
I think installing the libgl1-mesa-dev package (on ubuntu) should fix this. I'll probably need to spin up a VM or something to test it though :/
Assignee: nobody → bugmail
OS: Unspecified → Linux
Summary: building webrender requires a GL library not installed by ./mach bootstrap → On Ubuntu, building webrender requires a GL library not installed by ./mach bootstrap
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #2)
> I think installing the libgl1-mesa-dev package (on ubuntu) should fix this.
> I'll probably need to spin up a VM or something to test it though :/

This fixes it for me.  I guess the confusing thing is the user may have libGL installed from another package specific to their graphics card, etc.
Thanks!

Before I put up the patch - Sotaro, were you working on removing the libGL.so dependency? I remember you said that you would be removing the offscreen_gl_context dependency or something like that for the android build. If that's still the plan then maybe this breakage will go away when that happens. If you're not working on that or it will take a while, then I can still update bootstrap to add the dependency.
Flags: needinfo?(sotaro.ikeda.g)
Might as well get the patch reviewed in the meantime though.
Duplicate of this bug: 1350043
Comment on attachment 8850585 [details]
Bug 1349967 - Install the libGL library during bootstrap on Ubuntu.

https://reviewboard.mozilla.org/r/123134/#review125636

Since there is a new requirement for Linux build, fixing the problem for merely one distro is not really nice. You should also add the dependency for the other distros.

But, more importantly, failing the build almost at the end is not nice at all. We should have a configure test that fails the build when the library is not there in the first place.
Attachment #8850585 - Flags: review?(mh+mozilla)
GL is requested by offscreen_gl_context. There is a bug to remove offscreen_gl_context form webrender. It is Bug 1325298.
Flags: needinfo?(sotaro.ikeda.g)
Depends on: 1325298
(In reply to Mike Hommey [:glandium] from comment #8)
> But, more importantly, failing the build almost at the end is not nice at
> all. We should have a configure test that fails the build when the library
> is not there in the first place.

I agree. It wasn't easy figuring out which package I need to install, before I found this bug. A configure test _and_ a bootstrap option would have made the experience much better.
Comment on attachment 8850585 [details]
Bug 1349967 - Install the libGL library during bootstrap on Ubuntu.

We (and by that I mean Sotaro) fixed webrender to no longer require libGL. I just landed the change on the graphics branch, and tomorrow I intend to get it merged to mozilla-central. That should fix this bug without any additional work required.
Attachment #8850585 - Attachment is obsolete: true
As of m-c cset 4c7c05a49f3c or newer the libGL dependency should be removed. I'm going to close this bug, but please reopen if still see this error.
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
You need to log in before you can comment on or make changes to this bug.