Skip to content

Won't compile on ARMv7

Trying to build on an ARMv7 against musl libc (armv7-alpine-linux-musleabihf) according to the instructions will throw a type conversion/cast error:

./configure
make
...
Making all in panel-plugin
make[2]: Entering directory '.../panel-plugin'
  CXX      libsystemload_la-cpu.lo
  CXX      libsystemload_la-network.lo
  CXX      libsystemload_la-memswap.lo
  CC       libsystemload_la-plugin.lo
network.cc: In function 'gint read_netload(gulong*, gulong*)':
network.cc:125:28: error: cannot convert 'guint64*' {aka 'long long unsigned int*'} to 'gulong*' {aka 'long unsigned int*'}
  125 |     if (read_netload_proc (&bytes[1]) != 0)
      |                            ^~~~~~~~~
      |                            |
      |                            guint64* {aka long long unsigned int*}
network.cc:73:28: note:   initializing argument 1 of 'gint read_netload_proc(gulong*)'
   73 | read_netload_proc (gulong *bytes)
      |                    ~~~~~~~~^~~~~
network.cc:126:35: error: cannot convert 'guint64*' {aka 'long long unsigned int*'} to 'gulong*' {aka 'long unsigned int*'}
  126 |         if (read_netload_libgtop (&bytes[1]) != 0)
      |                                   ^~~~~~~~~
      |                                   |
      |                                   guint64* {aka long long unsigned int*}
network.cc:63:31: note:   initializing argument 1 of 'gint read_netload_libgtop(gulong*)'
   63 | read_netload_libgtop (gulong *bytes)
      |                       ~~~~~~~~^~~~~
make[2]: *** [Makefile:619: libsystemload_la-network.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '.../panel-plugin'
make[1]: *** [Makefile:467: all-recursive] Error 1
make[1]: Leaving directory '...'
make: *** [Makefile:399: all] Error 2
>>> ERROR: xfce4-systemload-plugin: build failed