After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 786169 - gnome-shell 3.25.90 fails to build with meson on Ubuntu
gnome-shell 3.25.90 fails to build with meson on Ubuntu
Status: RESOLVED NOTGNOME
Product: gnome-shell
Classification: Core
Component: general
3.25.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2017-08-11 17:39 UTC by Jeremy Bicha
Modified: 2017-08-11 21:44 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
buildlog (335.40 KB, text/plain)
2017-08-11 17:47 UTC, Jeremy Bicha
Details
buildlog after meson patch 2115 (336.21 KB, text/plain)
2017-08-11 18:54 UTC, Jeremy Bicha
Details

Description Jeremy Bicha 2017-08-11 17:39:58 UTC
gnome-shell 3.25.90 fails to build for me with meson on Ubuntu 17.10.

Build log excerpt
------------------
/usr/bin/ld: cannot find -lmutter-clutter-1
/usr/bin/ld: cannot find -lmutter-cogl-1
collect2: error: ld returned 1 exit status
------------------

This problem seems to me to be somewhat similar to bug 777519.

I have cherry-picked https://git.gnome.org/browse/gnome-shell/commit/?id=1518a778ed84 but that didn't fix the problem.

I have also tried with and without adding -Wl,--disable-new-dtags

I assume Debian will be affected by this issue too but Debian is a bit delayed in getting all the dependencies packaged.

Workaround
==========
I reverted locally the 2 commits just before 3.25.90 was released and built with autotools. The build works fine.

Please consider keeping autotools support for gnome-shell 3.26 so that we have more time to figure out this issue.
Comment 1 Florian Müllner 2017-08-11 17:47:14 UTC
(In reply to Jeremy Bicha from comment #0)
> gnome-shell 3.25.90 fails to build for me with meson on Ubuntu 17.10.
> 
> Build log excerpt
> ------------------
> /usr/bin/ld: cannot find -lmutter-clutter-1
> /usr/bin/ld: cannot find -lmutter-cogl-1
> collect2: error: ld returned 1 exit status
> ------------------

Please provide more context, in particular at which point those errors occur (when linking a library? an executable? when creating the gir/typelib?)
Comment 2 Jeremy Bicha 2017-08-11 17:47:49 UTC
Created attachment 357435 [details]
buildlog
Comment 3 Florian Müllner 2017-08-11 18:12:28 UTC
linking of temporary binary failed: Command '['cc', '-o', [...] '-L/usr/lib/x86_64--extra-library=inux-gnu/mutter'

^^^ yikes - this is https://github.com/mesonbuild/meson/pull/2115. I've only encountered that issue with libraries with '-l' in their name ('telepathy-logger'), but apparently Ubuntu is much more affected by this bug due to the 'x86_64-linux' part in the multiarch path ...
Comment 4 Jeremy Bicha 2017-08-11 18:54:31 UTC
Created attachment 357438 [details]
buildlog after meson patch 2115

I used the 2115 patch to patch meson but gnome-shell still fails to build. New build log attached.
Comment 5 Jeremy Bicha 2017-08-11 21:28:21 UTC
Florian sent me a second patch to apply to meson that fixed this issue.

Now we just need to talk Jussi into making a new release with these 2 patches.
Comment 6 Florian Müllner 2017-08-11 21:44:41 UTC
For reference, https://github.com/mesonbuild/meson/pull/2177 is the additional fix.