Fail to build with libxfce4ui 4.18.0 on NixOS
tl;dr: This is basically a copy-paste of xfce/thunar#972 (closed) with different logs. I believe the root cause of the two issues are the same, so thanks for helping!
Hi, I run into some problems when trying to build xfce4-terminal 1.0.4 with libxfce4ui 4.18.0 (actually with all >= 4.17.2 versions) on NixOS, will appreciate some help with it.
The error message is:
terminal-window.c:37:10: fatal error: libxfce4kbd-private-3/libxfce4kbd-private/xfce-shortcuts-editor-dialog.h: No such file or directory
37 | #include <libxfce4kbd-private-3/libxfce4kbd-private/xfce-shortcuts-editor-dialog.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
The full log is:
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking sources
unpacking source archive /nix/store/96dabn534bkaabs8npik81d12a0a2m0s-source
source root is source
@nix { "action": "setPhase", "phase": "patchPhase" }
patching sources
@nix { "action": "setPhase", "phase": "xdtAutogenPhase" }
xdtAutogenPhase
Preparing package directory /build/source...
Running intltoolize --automake --copy --force
Running gtkdocize --copy...
Running autoreconf...
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4 ${ACLOCAL_FLAGS}
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
autoreconf: running: intltoolize --copy --force
autoreconf: running: gtkdocize --copy
autoreconf: running: aclocal --force -I m4 ${ACLOCAL_FLAGS}
autoreconf: running: /nix/store/jmccpyxlpigjlznpcw41cwgm3qr08phw-autoconf-2.71/bin/autoconf --force
configure.ac:110: warning: The macro `AC_HELP_STRING' is obsolete.
configure.ac:110: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
./lib/autoconf/general.m4:1553: AC_ARG_WITH is expanded from...
configure.ac:110: the top level
configure.ac:124: warning: The macro `AC_HELP_STRING' is obsolete.
configure.ac:124: You should run autoupdate.
./lib/autoconf/general.m4:204: AC_HELP_STRING is expanded from...
./lib/autoconf/general.m4:1553: AC_ARG_WITH is expanded from...
configure.ac:124: the top level
autoreconf: running: /nix/store/jmccpyxlpigjlznpcw41cwgm3qr08phw-autoconf-2.71/bin/autoheader --force
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:66: installing './compile'
configure.ac:80: installing './config.guess'
configure.ac:80: installing './config.sub'
configure.ac:51: installing './install-sh'
configure.ac:51: installing './missing'
terminal/Makefile.am: installing './depcomp'
autoreconf: Leaving directory '.'
Skipping configure process.
@nix { "action": "setPhase", "phase": "configurePhase" }
configuring
fixing libtool script ./ltmain.sh
./configure
configure flags: --disable-static --disable-dependency-tracking --prefix=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4 --bindir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/bin --sbindir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/sbin --includedir=/nix/store/m5zdq2l0csb84dkcagm0f9cbr8jpyb5c-xfce4-terminal-1.0.4-dev/include --oldincludedir=/nix/store/m5zdq2l0csb84dkcagm0f9cbr8jpyb5c-xfce4-terminal-1.0.4-dev/include --mandir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/share/man --infodir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/share/info --docdir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/share/doc/xfce4-terminal --libdir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/lib --libexecdir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/libexec --localedir=/nix/store/7xbah21mqkdz4yxja5wy0na84cbbihwv-xfce4-terminal-1.0.4/share/locale --enable-maintainer-mode
checking for a BSD-compatible install... /nix/store/h48pjfgsjl75bm7f3nxcdcrqjkqwns7m-coreutils-9.1/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /nix/store/h48pjfgsjl75bm7f3nxcdcrqjkqwns7m-coreutils-9.1/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1000' is supported by ustar format... yes
checking whether GID '100' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether make supports nested variables... (cached) yes
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... none
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) none
checking whether NLS is requested... yes
checking for intltool >= 0.35... 0.51.0 found
checking for intltool-update... /nix/store/wgg6znvqpzb7f4047zw9n1lw69r4m0f1-intltool-0.51.0/bin/intltool-update
checking for intltool-merge... /nix/store/wgg6znvqpzb7f4047zw9n1lw69r4m0f1-intltool-0.51.0/bin/intltool-merge
checking for intltool-extract... /nix/store/wgg6znvqpzb7f4047zw9n1lw69r4m0f1-intltool-0.51.0/bin/intltool-extract
checking for xgettext... /nix/store/sa6z32f4qlvncxfll1d8a10gx3sxnvng-gettext-0.21/bin/xgettext
checking for msgmerge... /nix/store/sa6z32f4qlvncxfll1d8a10gx3sxnvng-gettext-0.21/bin/msgmerge
checking for msgfmt... /nix/store/sa6z32f4qlvncxfll1d8a10gx3sxnvng-gettext-0.21/bin/msgfmt
checking for gmsgfmt... /nix/store/sa6z32f4qlvncxfll1d8a10gx3sxnvng-gettext-0.21/bin/msgfmt
checking for perl... /nix/store/ix8jflc6xha88lhfb33h2l77804i16l8-perl-5.36.0/bin/perl
checking for perl >= 5.8.1... 5.36.0
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /nix/store/xxm0ylrrvw6cnjmja8cgv3z9n6ym0gl2-gnused-4.8/bin/sed
checking for grep that handles long lines and -e... /nix/store/fnzj8zmxrq96vnigd0zc888qyys22jfv-gnugrep-3.7/bin/grep
checking for egrep... /nix/store/fnzj8zmxrq96vnigd0zc888qyys22jfv-gnugrep-3.7/bin/grep -E
checking for fgrep... /nix/store/fnzj8zmxrq96vnigd0zc888qyys22jfv-gnugrep-3.7/bin/grep -F
checking for ld used by gcc... ld
checking if the linker (ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... nm
checking the name lister (nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for ld option to reload object files... -r
checking for file... file
checking for objdump... objdump
checking how to recognize dependent libraries... (cached) pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse nm output from gcc object... ok
checking for sysroot... no
checking for a working dd... /nix/store/h48pjfgsjl75bm7f3nxcdcrqjkqwns7m-coreutils-9.1/bin/dd
checking how to truncate binary pipes... /nix/store/h48pjfgsjl75bm7f3nxcdcrqjkqwns7m-coreutils-9.1/bin/dd bs=4096 count=1
checking for mt... no
checking if : is a manifest tool... no
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for ctype.h... yes
checking for errno.h... yes
checking for limits.h... yes
checking for pwd.h... yes
checking for signal.h... yes
checking for time.h... yes
checking for unistd.h... (cached) yes
checking for locale.h... yes
checking for stdlib.h... (cached) yes
checking for bind_textdomain_codeset... yes
checking for locales directory... ${prefix}/share/locale
checking how to run the C preprocessor... gcc -E
checking for X... libraries , headers
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for main in -lX11... yes
checking pkg-config is at least version 0.9.0... yes
checking for gtk+-3.0 >= 3.22.0... 3.24.34
checking GTK_CFLAGS... -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0 -I/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib/glib-2.0/include -I/nix/store/cq6nz9pc3kvgah6d5yzk1q1a1189v1y3-gtk+3-3.24.34-dev/include/gtk-3.0 -I/nix/store/3yqf7jgn8p1nkqrl8f2a6jh4lb73yzl8-at-spi2-core-2.46.0-dev/include/atk-1.0 -I/nix/store/ml16ppwk347v4bjhsxl3cdkwpfybr654-cairo-1.16.0-dev/include/cairo -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include/freetype2 -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include -I/nix/store/68i3iaarcmirc57z4mnxzwp5yvdk15ld-gdk-pixbuf-2.42.10-dev/include/gdk-pixbuf-2.0 -I/nix/store/f3ln1d61hlmnzm36572jrhbibd1wa040-pango-1.50.11-dev/include/pango-1.0 -I/nix/store/d1i776n7h893y3yjv533fx8p74r2cy8z-harfbuzz-5.3.1-dev/include/harfbuzz
checking GTK_LIBS... -L/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib -L/nix/store/68rgsss8d6y09d4wyxxl5nyv33cybc3f-gtk+3-3.24.34/lib -L/nix/store/w9pm7mrja6lqly4n804v4fq6snnfjdjk-at-spi2-core-2.46.0/lib -L/nix/store/0hdv1c78cn4s16b0g1ndg5lqlhcz2vqb-cairo-1.16.0/lib -L/nix/store/7pq2jmd1igm8y3j87rpdpms01ys4af90-gdk-pixbuf-2.42.10/lib -L/nix/store/krahifh1ij7s9gxmqcdc0s5k7i4xqf3y-pango-1.50.11/lib -L/nix/store/306jb5l2pzyxchds97xspsx55xc345m5-harfbuzz-5.3.1/lib -lgtk-3 -lgdk-3 -lz -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0
checking pkg-config is at least version 0.9.0... yes
checking for vte-2.91 >= 0.51.3... 0.70.2
checking VTE_CFLAGS... -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0 -I/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib/glib-2.0/include -I/nix/store/cq6nz9pc3kvgah6d5yzk1q1a1189v1y3-gtk+3-3.24.34-dev/include/gtk-3.0 -I/nix/store/3yqf7jgn8p1nkqrl8f2a6jh4lb73yzl8-at-spi2-core-2.46.0-dev/include/atk-1.0 -I/nix/store/ml16ppwk347v4bjhsxl3cdkwpfybr654-cairo-1.16.0-dev/include/cairo -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include/freetype2 -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include -I/nix/store/68i3iaarcmirc57z4mnxzwp5yvdk15ld-gdk-pixbuf-2.42.10-dev/include/gdk-pixbuf-2.0 -I/nix/store/f3ln1d61hlmnzm36572jrhbibd1wa040-pango-1.50.11-dev/include/pango-1.0 -I/nix/store/d1i776n7h893y3yjv533fx8p74r2cy8z-harfbuzz-5.3.1-dev/include/harfbuzz -I/nix/store/f12m99kmv7w10il6xzn7y93b4rvvg3nv-vte-0.70.2-dev/include/vte-2.91
checking VTE_LIBS... -L/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib -L/nix/store/68rgsss8d6y09d4wyxxl5nyv33cybc3f-gtk+3-3.24.34/lib -L/nix/store/w9pm7mrja6lqly4n804v4fq6snnfjdjk-at-spi2-core-2.46.0/lib -L/nix/store/0hdv1c78cn4s16b0g1ndg5lqlhcz2vqb-cairo-1.16.0/lib -L/nix/store/7pq2jmd1igm8y3j87rpdpms01ys4af90-gdk-pixbuf-2.42.10/lib -L/nix/store/krahifh1ij7s9gxmqcdc0s5k7i4xqf3y-pango-1.50.11/lib -L/nix/store/306jb5l2pzyxchds97xspsx55xc345m5-harfbuzz-5.3.1/lib -L/nix/store/afm1iwvrgxwdac0madscp18clkycc51h-vte-0.70.2/lib -lvte-2.91 -lgtk-3 -lgdk-3 -lz -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0
checking pkg-config is at least version 0.9.0... yes
checking for gio-2.0 >= 2.42.0... 2.74.1
checking GIO_CFLAGS... -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0 -I/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib/glib-2.0/include
checking GIO_LIBS... -L/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib -lgio-2.0 -lgobject-2.0 -lglib-2.0
checking pkg-config is at least version 0.9.0... yes
checking for libxfce4ui-2 >= 4.16.0... 4.18.0
checking LIBXFCE4UI_CFLAGS... -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0 -I/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib/glib-2.0/include -I/nix/store/cq6nz9pc3kvgah6d5yzk1q1a1189v1y3-gtk+3-3.24.34-dev/include/gtk-3.0 -I/nix/store/3yqf7jgn8p1nkqrl8f2a6jh4lb73yzl8-at-spi2-core-2.46.0-dev/include/atk-1.0 -I/nix/store/ml16ppwk347v4bjhsxl3cdkwpfybr654-cairo-1.16.0-dev/include/cairo -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include/freetype2 -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include -I/nix/store/68i3iaarcmirc57z4mnxzwp5yvdk15ld-gdk-pixbuf-2.42.10-dev/include/gdk-pixbuf-2.0 -I/nix/store/f3ln1d61hlmnzm36572jrhbibd1wa040-pango-1.50.11-dev/include/pango-1.0 -I/nix/store/d1i776n7h893y3yjv533fx8p74r2cy8z-harfbuzz-5.3.1-dev/include/harfbuzz -I/nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/include/xfce4/libxfce4ui-2 -I/nix/store/4i53hy3vh8inv1jj7gqbdgy7lrnrsnkv-libxfce4util-4.18.0-dev/include/xfce4
checking LIBXFCE4UI_LIBS... -L/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib -L/nix/store/68rgsss8d6y09d4wyxxl5nyv33cybc3f-gtk+3-3.24.34/lib -L/nix/store/w9pm7mrja6lqly4n804v4fq6snnfjdjk-at-spi2-core-2.46.0/lib -L/nix/store/0hdv1c78cn4s16b0g1ndg5lqlhcz2vqb-cairo-1.16.0/lib -L/nix/store/7pq2jmd1igm8y3j87rpdpms01ys4af90-gdk-pixbuf-2.42.10/lib -L/nix/store/krahifh1ij7s9gxmqcdc0s5k7i4xqf3y-pango-1.50.11/lib -L/nix/store/306jb5l2pzyxchds97xspsx55xc345m5-harfbuzz-5.3.1/lib -L/nix/store/fvday44n0qxglhmzvb9fwcbqdsj30h83-libxfce4ui-4.18.0/lib -L/nix/store/73i2l1j9b2f8ykxdb95knwrh7665nchf-libxfce4util-4.18.0/lib -lxfce4ui-2 -lgtk-3 -lgdk-3 -lz -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lxfce4util -lglib-2.0
checking pkg-config is at least version 0.9.0... yes
checking for libxfconf-0 >= 4.16.0... 4.18.0
checking XFCONF_CFLAGS... -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0 -I/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib/glib-2.0/include -I/nix/store/vlfb7d38rl2xx6fmrwm7x8z64jvy96z9-xfconf-4.18.0-dev/include/xfce4/xfconf-0
checking XFCONF_LIBS... -L/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib -L/nix/store/6sxaf2ifpizqax4pfl6qs7v7mbasm8jy-xfconf-4.18.0/lib -lxfconf-0 -lgio-2.0 -lgobject-2.0 -lglib-2.0
checking pkg-config is at least version 0.9.0... yes
checking for libxfce4kbd-private-3 >= 4.16.0... 4.18.0
checking LIBXFCE4KBD_PRIVATE_CFLAGS... -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include -I/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0 -I/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib/glib-2.0/include -I/nix/store/cq6nz9pc3kvgah6d5yzk1q1a1189v1y3-gtk+3-3.24.34-dev/include/gtk-3.0 -I/nix/store/3yqf7jgn8p1nkqrl8f2a6jh4lb73yzl8-at-spi2-core-2.46.0-dev/include/atk-1.0 -I/nix/store/ml16ppwk347v4bjhsxl3cdkwpfybr654-cairo-1.16.0-dev/include/cairo -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include/freetype2 -I/nix/store/c3g0f51nsgd5s1jy42wnh76w96nqiv28-freetype-2.12.1-dev/include -I/nix/store/68i3iaarcmirc57z4mnxzwp5yvdk15ld-gdk-pixbuf-2.42.10-dev/include/gdk-pixbuf-2.0 -I/nix/store/f3ln1d61hlmnzm36572jrhbibd1wa040-pango-1.50.11-dev/include/pango-1.0 -I/nix/store/d1i776n7h893y3yjv533fx8p74r2cy8z-harfbuzz-5.3.1-dev/include/harfbuzz -I/nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/include/xfce4/libxfce4kbd-private-3 -I/nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/include/xfce4/libxfce4ui-2 -I/nix/store/4i53hy3vh8inv1jj7gqbdgy7lrnrsnkv-libxfce4util-4.18.0-dev/include/xfce4 -I/nix/store/vlfb7d38rl2xx6fmrwm7x8z64jvy96z9-xfconf-4.18.0-dev/include/xfce4/xfconf-0
checking LIBXFCE4KBD_PRIVATE_LIBS... -L/nix/store/mxn46y68rsmx83qcraivfx2fmzx4aqc4-glib-2.74.1/lib -L/nix/store/68rgsss8d6y09d4wyxxl5nyv33cybc3f-gtk+3-3.24.34/lib -L/nix/store/w9pm7mrja6lqly4n804v4fq6snnfjdjk-at-spi2-core-2.46.0/lib -L/nix/store/0hdv1c78cn4s16b0g1ndg5lqlhcz2vqb-cairo-1.16.0/lib -L/nix/store/7pq2jmd1igm8y3j87rpdpms01ys4af90-gdk-pixbuf-2.42.10/lib -L/nix/store/krahifh1ij7s9gxmqcdc0s5k7i4xqf3y-pango-1.50.11/lib -L/nix/store/306jb5l2pzyxchds97xspsx55xc345m5-harfbuzz-5.3.1/lib -L/nix/store/fvday44n0qxglhmzvb9fwcbqdsj30h83-libxfce4ui-4.18.0/lib -L/nix/store/73i2l1j9b2f8ykxdb95knwrh7665nchf-libxfce4util-4.18.0/lib -L/nix/store/6sxaf2ifpizqax4pfl6qs7v7mbasm8jy-xfconf-4.18.0/lib -lxfce4kbd-private-3 -lxfconf-0 -lxfce4ui-2 -lgtk-3 -lgdk-3 -lz -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lxfce4util -lglib-2.0
checking for Gnome default applications dir... Package gnome-default-applications was not found in the pkg-config search path.
Perhaps you should add the directory containing `gnome-default-applications.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gnome-default-applications' found
Using prefix of terminal
checking for gtk-doc... yes
checking for gtkdoc-check... gtkdoc-check.test
checking for gtkdoc-check... /nix/store/fk9ixjxm4njrybgq4l2hic080d3hawvx-gtk-doc-1.33.2/bin/gtkdoc-check
checking for gtkdoc-rebase... /nix/store/fk9ixjxm4njrybgq4l2hic080d3hawvx-gtk-doc-1.33.2/bin/gtkdoc-rebase
checking for gtkdoc-mkpdf... /nix/store/fk9ixjxm4njrybgq4l2hic080d3hawvx-gtk-doc-1.33.2/bin/gtkdoc-mkpdf
checking whether to build gtk-doc documentation... no
checking for glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0... yes
checking whether to build with debugging support... minimum
checking if gcc supports -Wall... yes
checking if gcc supports -Wextra... yes
checking if gcc supports -Wno-missing-field-initializers... yes
checking if gcc supports -Wno-unused-parameter... yes
checking if gcc supports -Wmissing-declarations... yes
checking if gcc supports -Wmissing-noreturn... yes
checking if gcc supports -Wpointer-arith... yes
checking if gcc supports -Wcast-align... yes
checking if gcc supports -Wformat... yes
checking if gcc supports -Wformat-security... yes
checking if gcc supports -Wformat-y2k... yes
checking if gcc supports -Winit-self... yes
checking if gcc supports -Wmissing-include-dirs... yes
checking if gcc supports -Wundef... yes
checking if gcc supports -Wredundant-decls... yes
checking if gcc supports -Wshadow... yes
checking if gcc supports -Wdeclaration-after-statement... yes
checking if gcc supports -Wnested-externs... yes
checking if gcc supports -Wold-style-definition... yes
checking if gcc supports -Wall... yes
checking if gcc supports -Wextra... yes
checking if gcc supports -Wno-missing-field-initializers... yes
checking if gcc supports -Wno-unused-parameter... yes
checking if gcc supports -Wmissing-declarations... yes
checking if gcc supports -Wmissing-noreturn... yes
checking if gcc supports -Wpointer-arith... yes
checking if gcc supports -Wcast-align... yes
checking if gcc supports -Wformat... yes
checking if gcc supports -Wformat-security... yes
checking if gcc supports -Wformat-y2k... yes
checking if gcc supports -Winit-self... yes
checking if gcc supports -Wmissing-include-dirs... yes
checking if gcc supports -Wundef... yes
checking if gcc supports -Wredundant-decls... yes
checking if gcc supports -Wshadow... yes
checking whether ld -m elf_x86_64 accepts --as-needed... yes
checking whether ld -m elf_x86_64 accepts -O1... yes
checking PLATFORM_CPPFLAGS...
checking PLATFORM_CFLAGS...
checking PLATFORM_LDFLAGS...
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating colorschemes/Makefile
config.status: creating doc/Makefile
config.status: creating po/Makefile.in
config.status: creating terminal/Makefile
config.status: creating terminal/terminal-config.h
config.status: creating icons/Makefile
config.status: creating icons/16x16/Makefile
config.status: creating icons/24x24/Makefile
config.status: creating icons/32x32/Makefile
config.status: creating icons/48x48/Makefile
config.status: creating icons/128x128/Makefile
config.status: creating icons/scalable/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing po/stamp-it commands
Build Configuration:
* Debug support: minimum
@nix { "action": "setPhase", "phase": "buildPhase" }
building
build flags: -j8 SHELL=/nix/store/nfgpn9av331q7zi1dl6d5qpir60y513s-bash-5.1-p16/bin/bash
make all-recursive
make[1]: Entering directory '/build/source'
Making all in colorschemes
make[2]: Entering directory '/build/source/colorschemes'
ITMRG black-on-white.theme
ITMRG dark-pastels.theme
ITMRG green-on-black.theme
ITMRG solarized-dark.theme
ITMRG solarized-light.theme
ITMRG tango.theme
ITMRG white-on-black.theme
ITMRG xterm.theme
make[2]: Leaving directory '/build/source/colorschemes'
Making all in doc
make[2]: Entering directory '/build/source/doc'
xsltproc --nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl xfce4-terminal.xml
Note: Writing xfce4-terminal.1
make[2]: Leaving directory '/build/source/doc'
Making all in icons
make[2]: Entering directory '/build/source/icons'
Making all in scalable
make[3]: Entering directory '/build/source/icons/scalable'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/build/source/icons/scalable'
Making all in 16x16
make[3]: Entering directory '/build/source/icons/16x16'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/build/source/icons/16x16'
Making all in 24x24
make[3]: Entering directory '/build/source/icons/24x24'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/build/source/icons/24x24'
Making all in 32x32
make[3]: Entering directory '/build/source/icons/32x32'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/build/source/icons/32x32'
Making all in 48x48
make[3]: Entering directory '/build/source/icons/48x48'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/build/source/icons/48x48'
Making all in 128x128
make[3]: Entering directory '/build/source/icons/128x128'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/build/source/icons/128x128'
make[3]: Entering directory '/build/source/icons'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/build/source/icons'
make[2]: Leaving directory '/build/source/icons'
Making all in po
make[2]: Entering directory '/build/source/po'
MSGFMT ar.gmo
MSGFMT ast.gmo
MSGFMT be.gmo
MSGFMT bg.gmo
MSGFMT ca.gmo
MSGFMT cs.gmo
MSGFMT da.gmo
MSGFMT de.gmo
MSGFMT el.gmo
MSGFMT en_AU.gmo
MSGFMT en_GB.gmo
MSGFMT es.gmo
MSGFMT eo.gmo
MSGFMT et.gmo
MSGFMT eu.gmo
MSGFMT fi.gmo
MSGFMT fr.gmo
MSGFMT gl.gmo
MSGFMT hr.gmo
MSGFMT he.gmo
MSGFMT hu.gmo
MSGFMT hy_AM.gmo
MSGFMT hye.gmo
MSGFMT id.gmo
MSGFMT ie.gmo
MSGFMT is.gmo
MSGFMT it.gmo
MSGFMT ja.gmo
MSGFMT kk.gmo
MSGFMT ko.gmo
MSGFMT lt.gmo
MSGFMT lv.gmo
MSGFMT ms.gmo
MSGFMT nb.gmo
MSGFMT nl.gmo
MSGFMT oc.gmo
MSGFMT pa.gmo
MSGFMT pl.gmo
MSGFMT pt.gmo
MSGFMT pt_BR.gmo
MSGFMT ro.gmo
MSGFMT ru.gmo
MSGFMT si.gmo
MSGFMT sk.gmo
MSGFMT sl.gmo
MSGFMT sq.gmo
MSGFMT sr.gmo
MSGFMT sv.gmo
MSGFMT te.gmo
MSGFMT th.gmo
MSGFMT tr.gmo
MSGFMT ug.gmo
MSGFMT uk.gmo
MSGFMT ur.gmo
MSGFMT ur_PK.gmo
MSGFMT vi.gmo
MSGFMT zh_CN.gmo
MSGFMT zh_TW.gmo
make[2]: Leaving directory '/build/source/po'
Making all in terminal
make[2]: Entering directory '/build/source/terminal'
GEN terminal-enum-types.c
GEN stamp-terminal-enum-types.h
GEN terminal-marshal.c
GEN stamp-terminal-marshal.h
GEN terminal-preferences-ui.h
INFO: Reading terminal-marshal.list...
INFO: Reading terminal-marshal.list...
make all-am
make[3]: Entering directory '/build/source/terminal'
CC xfce4_terminal-terminal-enum-types.o
CC xfce4_terminal-terminal-marshal.o
CC xfce4_terminal-main.o
CC xfce4_terminal-terminal-app.o
CC xfce4_terminal-terminal-encoding-action.o
CC xfce4_terminal-terminal-gdbus.o
CC xfce4_terminal-terminal-image-loader.o
CC xfce4_terminal-terminal-options.o
CC xfce4_terminal-terminal-preferences.o
CC xfce4_terminal-terminal-preferences-dialog.o
CC xfce4_terminal-terminal-search-dialog.o
CC xfce4_terminal-terminal-screen.o
CC xfce4_terminal-terminal-util.o
CC xfce4_terminal-terminal-widget.o
CC xfce4_terminal-terminal-window.o
CC xfce4_terminal-terminal-window-dropdown.o
terminal-widget.c: In function 'terminal_widget_context_menu':
terminal-widget.c:358:7: warning: 'g_memdup' is deprecated: Use 'g_memdup2' instead []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdeprecated-declarations-Wdeprecated-declarations]8;;]
358 | g_object_set_data_full (G_OBJECT (item_open), I_("terminal-widget-tag"), g_memdup (&tag, sizeof (tag)), g_free);
| ^~~~~~~~~~~~~~~~~~~~~~
In file included from /nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0/glib.h:84,
from /nix/store/4i53hy3vh8inv1jj7gqbdgy7lrnrsnkv-libxfce4util-4.18.0-dev/include/xfce4/libxfce4util/libxfce4util-config.h:29,
from /nix/store/4i53hy3vh8inv1jj7gqbdgy7lrnrsnkv-libxfce4util-4.18.0-dev/include/xfce4/libxfce4util/libxfce4util.h:27,
from /nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/include/xfce4/libxfce4ui-2/libxfce4ui/libxfce4ui.h:23,
from terminal-widget.c:34:
/nix/store/03dsp8rf3nic826nlw090fnd3wzfcabk-glib-2.74.1-dev/include/glib-2.0/glib/gstrfuncs.h:259:23: note: declared here
259 | gpointer g_memdup (gconstpointer mem,
| ^~~~~~~~
terminal-screen.c: In function 'terminal_screen_update_colors':
terminal-screen.c:1130:11: warning: 'gtk_style_context_get_background_color' is deprecated: Use 'gtk_render_background' instead []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdeprecated-declarations-Wdeprecated-declarations]8;;]
1130 | gtk_style_context_get_background_color (context, GTK_STATE_FLAG_ACTIVE, &bg);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /nix/store/cq6nz9pc3kvgah6d5yzk1q1a1189v1y3-gtk+3-3.24.34-dev/include/gtk-3.0/gtk/gtkicontheme.h:27,
from /nix/store/cq6nz9pc3kvgah6d5yzk1q1a1189v1y3-gtk+3-3.24.34-dev/include/gtk-3.0/gtk/gtk.h:127,
from /nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/include/xfce4/libxfce4ui-2/libxfce4ui/xfce-dialogs.h:27,
from /nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/include/xfce4/libxfce4ui-2/libxfce4ui/libxfce4ui.h:28,
from terminal-screen.c:49:
/nix/store/cq6nz9pc3kvgah6d5yzk1q1a1189v1y3-gtk+3-3.24.34-dev/include/gtk-3.0/gtk/gtkstylecontext.h:1201:6: note: declared here
1201 | void gtk_style_context_get_background_color (GtkStyleContext *context,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal-screen.c: In function 'terminal_screen_get_encoding':
terminal-screen.c:2741:3: warning: 'vte_terminal_get_encoding' is deprecated []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdeprecated-declarations-Wdeprecated-declarations]8;;]
2741 | return vte_terminal_get_encoding (VTE_TERMINAL (screen->terminal));
| ^~~~~~
In file included from /nix/store/f12m99kmv7w10il6xzn7y93b4rvvg3nv-vte-0.70.2-dev/include/vte-2.91/vte/vte.h:37,
from ../terminal/terminal-private.h:22,
from ../terminal/terminal-screen.h:24,
from terminal-screen.c:56:
/nix/store/f12m99kmv7w10il6xzn7y93b4rvvg3nv-vte-0.70.2-dev/include/vte-2.91/vte/vtedeprecated.h:139:13: note: declared here
139 | const char *vte_terminal_get_encoding(VteTerminal *terminal) _VTE_CXX_NOEXCEPT _VTE_GNUC_NONNULL(1);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
terminal-screen.c: In function 'terminal_screen_set_encoding':
terminal-screen.c:2753:3: warning: 'vte_terminal_set_encoding' is deprecated []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdeprecated-declarations-Wdeprecated-declarations]8;;]
2753 | if (!vte_terminal_set_encoding (VTE_TERMINAL (screen->terminal), charset, NULL))
| ^~
In file included from /nix/store/f12m99kmv7w10il6xzn7y93b4rvvg3nv-vte-0.70.2-dev/include/vte-2.91/vte/vte.h:37,
from ../terminal/terminal-private.h:22,
from ../terminal/terminal-screen.h:24,
from terminal-screen.c:56:
/nix/store/f12m99kmv7w10il6xzn7y93b4rvvg3nv-vte-0.70.2-dev/include/vte-2.91/vte/vtedeprecated.h:133:10: note: declared here
133 | gboolean vte_terminal_set_encoding(VteTerminal *terminal,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
terminal-screen.c: In function 'terminal_screen_update_font':
terminal-screen.c:2934:7: warning: 'vte_terminal_set_allow_bold' is deprecated []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wdeprecated-declarations-Wdeprecated-declarations]8;;]
2934 | vte_terminal_set_allow_bold (VTE_TERMINAL (screen->terminal), font_allow_bold);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /nix/store/f12m99kmv7w10il6xzn7y93b4rvvg3nv-vte-0.70.2-dev/include/vte-2.91/vte/vte.h:37,
from ../terminal/terminal-private.h:22,
from ../terminal/terminal-screen.h:24,
from terminal-screen.c:56:
/nix/store/f12m99kmv7w10il6xzn7y93b4rvvg3nv-vte-0.70.2-dev/include/vte-2.91/vte/vtedeprecated.h:158:6: note: declared here
158 | void vte_terminal_set_allow_bold(VteTerminal *terminal,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
terminal-window.c:37:10: fatal error: libxfce4kbd-private-3/libxfce4kbd-private/xfce-shortcuts-editor-dialog.h: No such file or directory
37 | #include <libxfce4kbd-private-3/libxfce4kbd-private/xfce-shortcuts-editor-dialog.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [Makefile:831: xfce4_terminal-terminal-window.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/build/source/terminal'
make[2]: *** [Makefile:491: all] Error 2
make[2]: Leaving directory '/build/source/terminal'
make[1]: *** [Makefile:569: all-recursive] Error 1
make[1]: Leaving directory '/build/source'
make: *** [Makefile:459: all] Error 2
Since NixOS installs packages in their own immutable prefix (which might be the reason why the build failure cannot be reproduced on other distros), here is the tree
result of the dev output of libxfce4ui:
$ tree /nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev
/nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev
├── include
│ └── xfce4
│ ├── libxfce4kbd-private-3
│ │ └── libxfce4kbd-private
│ │ ├── xfce-shortcut-dialog.h
│ │ ├── xfce-shortcuts-editor-dialog.h
│ │ ├── xfce-shortcuts-editor.h
│ │ ├── xfce-shortcuts-grabber.h
│ │ ├── xfce-shortcuts.h
│ │ ├── xfce-shortcuts-provider.h
│ │ └── xfce-shortcuts-xfwm4.h
│ └── libxfce4ui-2
│ └── libxfce4ui
│ ├── libxfce4ui-config.h
│ ├── libxfce4ui-enum-types.h
│ ├── libxfce4ui.h
│ ├── xfce-dialogs.h
│ ├── xfce-filename-input.h
│ ├── xfce-gdk-extensions.h
│ ├── xfce-gtk-extensions.h
│ ├── xfce-sm-client.h
│ ├── xfce-spawn.h
│ └── xfce-titled-dialog.h
├── lib
│ └── pkgconfig
│ ├── libxfce4kbd-private-3.pc
│ └── libxfce4ui-2.pc
├── nix-support
│ └── propagated-build-inputs
└── share
├── gir-1.0
│ └── Libxfce4ui-2.0.gir
└── vala
└── vapi
├── libxfce4ui-2.deps
└── libxfce4ui-2.vapi
Here is the content of /nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/lib/pkgconfig/libxfce4kbd-private-3.pc
:
prefix=/nix/store/fvday44n0qxglhmzvb9fwcbqdsj30h83-libxfce4ui-4.18.0
exec_prefix=${prefix}
libdir=/nix/store/fvday44n0qxglhmzvb9fwcbqdsj30h83-libxfce4ui-4.18.0/lib
includedir=/nix/store/qpc5cj3gbs4956fbkm26mihcarfbyv7w-libxfce4ui-4.18.0-dev/include
Name: libxfce4kbd-private
Description: Private Xfce library for shared code between xfwm4 and xfce4-settings
Requires: gdk-3.0 gtk+-3.0 libxfce4util-1.0 libxfconf-0 libxfce4ui-2
Version: 4.18.0
Libs: -L${libdir} -lxfce4kbd-private-3
Cflags: -I${includedir}/xfce4/libxfce4kbd-private-3
A quick look it is caused by this MR: !32 (merged), specifically the following line:
Change it as the below fixes the problem:
- #include <libxfce4kbd-private-3/libxfce4kbd-private/xfce-shortcuts-editor-dialog.h>
+ #include <libxfce4kbd-private/xfce-shortcuts-editor-dialog.h>
Otherwise we have to manually pass something like -I${libxfce4ui.dev}/include/xfce4
to unbreak our build, but considering that the cflag in libxfce4kbd-private-3.pc
is using -I${includedir}/xfce4/libxfce4kbd-private-3
, I am curious why this is needed.
Thanks for reading!
P.s.: We also run into same issue when building thunar after xfce/thunar!171 (merged). But xfwm4 builds fine so far, xfwm4 uses libxfce4kbd-private-3: https://gitlab.xfce.org/xfce/xfwm4/-/blob/xfwm4-4.18.0/settings-dialogs/xfwm4-settings.c#L45.