Build failure on Archlinux in docker container
I am trying to build master in a docker container, and every time without fail, it gets to a point in the build and fails. Here is the log of when it starts building:
Now type "make" to compile.
make all-recursive
make[1]: Entering directory '/git/xfce-test/xfce4-panel/src/xfce4-panel'
Making all in libxfce4panel
make[2]: Entering directory '/git/xfce-test/xfce4-panel/src/xfce4-panel/libxfce4panel'
GEN libxfce4panel-enum-types.h
GEN libxfce4panel-alias.h
GEN libxfce4panel-aliasdef.c
GEN libxfce4panel-enum-types.c
GEN libxfce4panel-marshal.c
INFO: Reading libxfce4panel-marshal.list...
GEN libxfce4panel-marshal.h
INFO: Reading libxfce4panel-marshal.list...
make all-am
make[3]: Entering directory '/git/xfce-test/xfce4-panel/src/xfce4-panel/libxfce4panel'
CC libxfce4panel_2_0_la-libxfce4panel-aliasdef.lo
CC libxfce4panel_2_0_la-libxfce4panel-enum-types.lo
CC libxfce4panel_2_0_la-libxfce4panel-marshal.lo
CC libxfce4panel_2_0_la-libxfce4panel-config.lo
CC libxfce4panel_2_0_la-xfce-arrow-button.lo
CC libxfce4panel_2_0_la-xfce-panel-convenience.lo
CC libxfce4panel_2_0_la-xfce-panel-plugin.lo
CC libxfce4panel_2_0_la-xfce-panel-plugin-provider.lo
CC libxfce4panel_2_0_la-xfce-panel-image.lo
CCLD libxfce4panel-2.0.la
GISCAN Libxfce4panel-2.0.gir
In file included from /usr/include/bits/libc-header-start.h:33,
from /usr/include/limits.h:26,
from /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include-fixed/limits.h:195,
from /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include-fixed/syslimits.h:7,
from /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/include-fixed/limits.h:34,
from /usr/lib/glib-2.0/include/glibconfig.h:11,
from /usr/include/glib-2.0/glib/gtypes.h:32,
from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from /usr/include/glib-2.0/gobject/gbinding.h:28,
from /usr/include/glib-2.0/glib-object.h:22,
from /git/xfce-test/xfce4-panel/src/xfce4-panel/libxfce4panel/libxfce4panel-enum-types.h:6,
from /git/xfce-test/xfce4-panel/src/xfce4-panel/libxfce4panel/g-ir-cpp-qodd5qut.c:4:
/usr/include/features.h:397:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
397 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)
| ^~~~~~~
GICOMP Libxfce4panel-2.0.gir
VAPIGEN libxfce4panel-2.0.vapi
Libxfce4panel-2.0.gir:390.5-393.20: error: `Xfce' already contains a definition for `MAJOR_VERSION'
libxfce4util-1.0.vapi:95.2-95.31: note: previous definition of `MAJOR_VERSION' was here
Libxfce4panel-2.0.gir:403.5-406.20: error: `Xfce' already contains a definition for `MICRO_VERSION'
libxfce4util-1.0.vapi:97.2-97.31: note: previous definition of `MICRO_VERSION' was here
Libxfce4panel-2.0.gir:416.5-419.20: error: `Xfce' already contains a definition for `MINOR_VERSION'
libxfce4util-1.0.vapi:99.2-99.31: note: previous definition of `MINOR_VERSION' was here
make[3]: *** [/usr/share/vala/Makefile.vapigen:61: libxfce4panel-2.0.vapi] Error 1
make[3]: Leaving directory '/git/xfce-test/xfce4-panel/src/xfce4-panel/libxfce4panel'
make[2]: Leaving directory '/git/xfce-test/xfce4-panel/src/xfce4-panel/libxfce4panel'
make[2]: *** [Makefile:785: all] Error 2
make[1]: Leaving directory '/git/xfce-test/xfce4-panel/src/xfce4-panel'
make[1]: *** [Makefile:607: all-recursive] Error 1
make: *** [Makefile:518: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
It looks like it has something to do with libxfce4util
, which was built earlier, but I've been unable to trace the cause.
You can test it yourself by downloading the repo at: https://github.com/xfce-test/container-archlinux. The PKGBUILD files used to build all the packages are located in xfce/db
.
Running the container
If you want to run the container, just run the ./app/scripts/build-xfce-test.sh
script from the root folder.
Alternatively, open the docker file and comment out the part that says RUN /container/scripts/install-xfce-packages.sh
, build the container using the above script, then start it using the start script ./app/scripts/start-xfce-test.sh
.
Everything you need will be mounted at /container
and /git/xfce-test
folder.