Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 698688 - media-libs/shaderc-2019.0 with dev-util/glslang-7.12.3353_pre20191027 - .../work/shaderc-2019.0/libshaderc_util/src/compiler.cc:29:10: fatal error: SPIRV/GlslangToSpv.h: No such file or directory
Summary: media-libs/shaderc-2019.0 with dev-util/glslang-7.12.3353_pre20191027 - .../w...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Nick Sarnie
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-10-27 21:20 UTC by cyrillic
Modified: 2019-10-29 04:22 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,20.91 KB, text/plain)
2019-10-27 21:21 UTC, cyrillic
Details
second_build.log (build.log,21.65 KB, text/plain)
2019-10-29 01:04 UTC, cyrillic
Details

Note You need to log in before you can comment on or make changes to this bug.
Description cyrillic 2019-10-27 21:20:23 UTC
dev-util/glslang-7.12.3353_pre20191027 breaks building media-libs/shaderc-2019.0 due to one of the needed headers are not found.

Reproducible: Always
Comment 1 cyrillic 2019-10-27 21:21:13 UTC
Created attachment 594188 [details]
build.log
Comment 2 Jonas Stein gentoo-dev 2019-10-27 21:51:09 UTC
Thank you for the report. Please recompile and 
paste the emerge info as described on
https://wiki.gentoo.org/wiki/Attach_the_logs_to_the_bug_ticket
We need to have all information at hand before ticket assignment, so that the maintainer can look after it in one session with minimal number of callbacks.
Please reopen this ticket (Status:unconfirmed) afterwards.
Comment 3 Ionen Wolkens gentoo-dev 2019-10-27 22:12:08 UTC
Having the same issue, I got this when I tried to run mpv (with vulkan output):
mpv: symbol lookup error: /usr/lib64/libshaderc_shared.so.1: undefined symbol: _ZN7glslang8TProgram5mapIOEPNS_14TIoMapResolverE

So I thought I'd rebuild shaderc, which promptly failed.
Comment 4 Ionen Wolkens gentoo-dev 2019-10-27 22:28:14 UTC
Might add this started right after a recent emerge that updated glslang and spirv-tools/headers (was watching another video just before without problems), so it breaks the existing library and not just the building process.
Comment 5 Ionen Wolkens gentoo-dev 2019-10-27 22:39:20 UTC
I tried downgrading to dev-util/glslang-7.12.3352 which restored the library functionality (mpv working normally). shaderc also builds fine again.
Comment 6 cyrillic 2019-10-28 01:03:22 UTC
(In reply to Jonas Stein from comment #2)
> Please recompile and 
> paste the emerge info as described ...

# emerge --info media-libs/shaderc
Portage 2.3.78 (python 3.7.5-final-0, default/linux/amd64/17.1/desktop/gnome/systemd, gcc-9.2.0, glibc-2.30-r2, 5.4.0-rc5 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.4.0-rc5-x86_64-AMD_Ryzen_Threadripper_2970WX_24-Core_Processor-with-gentoo-2.6
KiB Mem:    65917988 total,  30193668 free
KiB Swap:          0 total,         0 free
Head commit of repository qt: 1702c34efe03cd2511d01260f45e5e8e1b46fc99

Head commit of repository gentoo: b30d782b7e5ffcd586fff742f0dea3a3d8acf1bf

sh bash 5.0_p11
ld GNU ld (Gentoo 2.33.1 p1) 2.33.1
app-shells/bash:          5.0_p11::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.30.0::gentoo
dev-lang/python:          2.7.16::gentoo, 3.7.5-r1::gentoo
dev-util/cmake:           3.15.4::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/openrc:          0.42.1::gentoo
sys-apps/sandbox:         2.18::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.13.4-r2::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.33.1::gentoo
sys-devel/gcc:            9.2.0-r1::gentoo
sys-devel/gcc-config:     2.1::gentoo
sys-devel/libtool:        2.4.6-r5::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 5.3::gentoo (virtual/os-headers)
sys-libs/glibc:           2.30-r2::gentoo
Repositories:

newstuff
    location: /mnt/repos/newstuff
    masters: gentoo
    priority: -1030
    eclass-overrides: fixes

qt
    location: /mnt/repos/qt
    sync-type: git
    sync-uri: https://anongit.gentoo.org/git/proj/qt.git
    masters: gentoo
    priority: -1020
    eclass-overrides: fixes

gnomelive
    location: /mnt/repos/gnomelive
    masters: gentoo
    priority: -1010
    eclass-overrides: fixes

gentoo
    location: /mnt/repos/gentoo
    sync-type: git
    sync-uri: https://anongit.gentoo.org/git/repo/gentoo.git
    priority: -1000
    eclass-overrides: fixes

crossdev
    location: /mnt/repos/crossdev
    masters: gentoo
    eclass-overrides: fixes

fixes
    location: /mnt/repos/fixes
    masters: gentoo
    priority: 10
    eclass-overrides: fixes

Installed sets: @clang, @system
ACCEPT_KEYWORDS="* amd64 ~*"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=nocona -O2 -pipe"
DISTDIR="/mnt/distfiles"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j48"
PKGDIR="/var/tmp/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/tmp"
USE="X a52 aac acl alsa amd64 berkdb bluetooth bluray boost bzip2 cairo caps cdr colord cpudetection cracklib css cups curl custom-cflags cxx dbus drm dts dvd eds egl encode exif expat fbcon ffmpeg flac flickr fontconfig gdbm gif glamor glib gnome gnome-keyring gpm graphite gssapi gstreamer gtk gtk3 harfbuzz ibus icu imagemagick introspection ipv6 jpeg kmod kms lcms libass libnotify libsamplerate lzma mp3 nautilus ncurses networkmanager nls nptl nss numa ogg opengl openmp openssl opus orc pam pango pcre pdf png policykit postproc postscript pulseaudio python readline samba speex spell split-usr ssl ssp static-analyzer svg systemd tcl theora threads tiff tk tools tracker truetype udev unicode upnp-av usb user-session utils v4l vala vorbis vpx vulkan wayland webp x264 x265 xcb xmp xscreensaver xv xvmc zlib zstd" ABI_X86="64" CPU_FLAGS_X86="mmx mmxext sse sse2 sse3" CURL_SSL="nss" ELIBC="glibc" INPUT_DEVICES="libinput wacom" KERNEL="linux" L10N="en" LLVM_TARGETS="AMDGPU BPF X86" PYTHON_SINGLE_TARGET="python3_7" PYTHON_TARGETS="python2_7 python3_7" RUBY_TARGETS="ruby26" SANE_BACKENDS="*" USERLAND="GNU" VIDEO_CARDS="amdgpu intel nouveau radeon radeonsi"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

media-libs/shaderc-2019.0::gentoo was built with the following:
USE="-doc -test" ABI_X86="(64) -32 (-x32)"
FEATURES="assume-digests sandbox unmerge-logs ipc-sandbox news parallel-fetch preserve-libs pid-sandbox config-protect-if-modified sfperms network-sandbox unknown-features-warn binpkg-dostrip unmerge-orphans binpkg-docompress fixlafiles strict merge-sync binpkg-logs distlocks protect-owned multilib-strict ebuild-locks"
Comment 7 Ionen Wolkens gentoo-dev 2019-10-28 07:54:28 UTC
I would recommend masking =dev-util/glslang-7.12.3353_pre20191027 until this is figured out (or is there some blocker?). Given it not only break building but also break existing shaderc shared libraries due to ABI incompatibility.
Comment 8 Larry the Git Cow gentoo-dev 2019-10-28 23:16:30 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71fd8fefba4a17eccf86e805e00af942171b29b6

commit 71fd8fefba4a17eccf86e805e00af942171b29b6
Author:     Nick Sarnie <sarnex@gentoo.org>
AuthorDate: 2019-10-28 23:14:17 +0000
Commit:     Nick Sarnie <sarnex@gentoo.org>
CommitDate: 2019-10-28 23:15:47 +0000

    media-libs/shaderc: Fix build
    
    Fixes: https://bugs.gentoo.org/show_bug.cgi?id=698688
    Package-Manager: Portage-2.3.78, Repoman-2.3.17
    Signed-off-by: Nick Sarnie <sarnex@gentoo.org>

 ...derc-2019.0-fix-build-against-new-glslang.patch | 54 ++++++++++++++++++++++
 ...derc-2019.0.ebuild => shaderc-2019.0-r1.ebuild} |  9 ++--
 2 files changed, 59 insertions(+), 4 deletions(-)
Comment 9 cyrillic 2019-10-29 01:04:41 UTC
Created attachment 594332 [details]
second_build.log

The error message is a bit different, but still broken :(
Comment 10 Nick Sarnie gentoo-dev 2019-10-29 01:22:34 UTC
I can't reproduce that failure. 

Does /usr/include/glslang/MachineIndependent/localintermediate.h exist?

Can you backup /usr/include/glslang/SPIRV/SpvTools.h, and manually edit the include to change from 

#include "../glslang/MachineIndependent/localintermediate.h"
to
#include "glslang/MachineIndependent/localintermediate.h"

and try again?

If it still doesn't work please file a new bug.
Comment 11 Larry the Git Cow gentoo-dev 2019-10-29 02:19:56 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adc0493532194f5c4b33a3ae3d2b0fefe21a7d2b

commit adc0493532194f5c4b33a3ae3d2b0fefe21a7d2b
Author:     Nick Sarnie <sarnex@gentoo.org>
AuthorDate: 2019-10-29 02:19:19 +0000
Commit:     Nick Sarnie <sarnex@gentoo.org>
CommitDate: 2019-10-29 02:19:19 +0000

    media-libs/shaderc: Depend on new dev-util/glslang revision
    
    Bug: https://bugs.gentoo.org/show_bug.cgi?id=698688
    Package-Manager: Portage-2.3.78, Repoman-2.3.17
    Signed-off-by: Nick Sarnie <sarnex@gentoo.org>

 media-libs/shaderc/shaderc-2019.0-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 12 cyrillic 2019-10-29 03:01:31 UTC
glslang-r1 is working now. Thank you.
Comment 13 Ionen Wolkens gentoo-dev 2019-10-29 04:22:28 UTC
Confirming everything fixed as well, both building and at run time, thanks.