* Package: app-misc/g15daemon-1.9.5.3-r13 * Repository: gentoo * Maintainer: robbat2@gentoo.org polynomial-c@gentoo.org * USE: abi_x86_64 amd64 elibc_glibc kernel_linux python_targets_python2_7 userland_GNU * FEATURES: network-sandbox preserve-libs sandbox userpriv usersandbox * Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Found sources for kernel version: * 5.4.14-gentoo * Checking for uinput support ... * To use g15daemon, you need to compile your kernel with uinput support. * Please enable uinput support in your kernel config, found at: * * Device Drivers -> Input Device ... -> Miscellaneous devices -> User level driver support. * * Once enabled, you should have the /dev/input/uinput device. * g15daemon will not work without the uinput device. >>> Unpacking source... >>> Unpacking g15daemon-1.9.5.3.tar.gz to /var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work >>> Source unpacked in /var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work >>> Preparing source in /var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3 ... * Applying g15daemon-1.9.5.3-forgotten-open-mode.patch ... [ ok ] * Applying g15daemon-1.9.5.3-overflow-fix.patch ... [ ok ] >>> Source prepared. >>> Configuring source in /var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3 ... * econf: updating g15daemon-1.9.5.3/config/config.guess with /usr/share/gnuconfig/config.guess * econf: updating g15daemon-1.9.5.3/config/config.sub with /usr/share/gnuconfig/config.sub ./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --libdir=/usr/lib64 --docdir=/usr/share/doc/g15daemon-1.9.5.3-r13 --disable-static configure: loading site script /usr/share/config.site checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for a BSD-compatible install... /usr/lib/portage/python3.6/ebuild-helpers/xattr/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether x86_64-pc-linux-gnu-gcc accepts -g... yes checking for x86_64-pc-linux-gnu-gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of x86_64-pc-linux-gnu-gcc... none checking for a sed that does not truncate output... /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ld used by x86_64-pc-linux-gnu-gcc... /usr/x86_64-pc-linux-gnu/bin/ld checking if the linker (/usr/x86_64-pc-linux-gnu/bin/ld) is GNU ld... yes checking for /usr/x86_64-pc-linux-gnu/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/bin/nm -B checking whether ln -s works... yes checking how to recognize dependent libraries... pass_all checking how to run the C preprocessor... x86_64-pc-linux-gnu-gcc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking for x86_64-pc-linux-gnu-g++... x86_64-pc-linux-gnu-g++ checking whether we are using the GNU C++ compiler... yes checking whether x86_64-pc-linux-gnu-g++ accepts -g... yes checking dependency style of x86_64-pc-linux-gnu-g++... none checking how to run the C++ preprocessor... x86_64-pc-linux-gnu-g++ -E checking for x86_64-pc-linux-gnu-g77... no checking for x86_64-pc-linux-gnu-xlf... no checking for x86_64-pc-linux-gnu-f77... no checking for x86_64-pc-linux-gnu-frt... no checking for x86_64-pc-linux-gnu-pgf77... no checking for x86_64-pc-linux-gnu-cf77... no checking for x86_64-pc-linux-gnu-fort77... no checking for x86_64-pc-linux-gnu-fl32... no checking for x86_64-pc-linux-gnu-af77... no checking for x86_64-pc-linux-gnu-xlf90... no checking for x86_64-pc-linux-gnu-f90... no checking for x86_64-pc-linux-gnu-pgf90... no checking for x86_64-pc-linux-gnu-pghpf... no checking for x86_64-pc-linux-gnu-epcf90... no checking for x86_64-pc-linux-gnu-gfortran... x86_64-pc-linux-gnu-gfortran checking whether we are using the GNU Fortran 77 compiler... yes checking whether x86_64-pc-linux-gnu-gfortran accepts -g... yes checking the maximum length of command line arguments... 1572864 checking command to parse /usr/bin/nm -B output from x86_64-pc-linux-gnu-gcc object... ok checking for objdir... .libs checking for x86_64-pc-linux-gnu-ar... x86_64-pc-linux-gnu-ar checking for x86_64-pc-linux-gnu-ranlib... x86_64-pc-linux-gnu-ranlib checking for x86_64-pc-linux-gnu-strip... x86_64-pc-linux-gnu-strip checking if x86_64-pc-linux-gnu-gcc supports -fno-rtti -fno-exceptions... no checking for x86_64-pc-linux-gnu-gcc option to produce PIC... -fPIC checking if x86_64-pc-linux-gnu-gcc PIC flag -fPIC works... yes checking if x86_64-pc-linux-gnu-gcc static flag -static works... yes checking if x86_64-pc-linux-gnu-gcc supports -c -o file.o... yes checking whether the x86_64-pc-linux-gnu-gcc linker (/usr/x86_64-pc-linux-gnu/bin/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 for shl_load... no checking for shl_load in -ldld... no checking for dlopen... no checking for dlopen in -ldl... yes checking whether a program can dlopen itself... yes checking whether a statically linked program can dlopen itself... no checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by x86_64-pc-linux-gnu-g++... /usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64 checking if the linker (/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the x86_64-pc-linux-gnu-g++ linker (/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64) supports shared libraries... yes checking for x86_64-pc-linux-gnu-g++ option to produce PIC... -fPIC checking if x86_64-pc-linux-gnu-g++ PIC flag -fPIC works... yes checking if x86_64-pc-linux-gnu-g++ static flag -static works... yes checking if x86_64-pc-linux-gnu-g++ supports -c -o file.o... yes checking whether the x86_64-pc-linux-gnu-g++ linker (/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate appending configuration tag "F77" to libtool checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking for x86_64-pc-linux-gnu-gfortran option to produce PIC... -fPIC checking if x86_64-pc-linux-gnu-gfortran PIC flag -fPIC works... yes checking if x86_64-pc-linux-gnu-gfortran static flag -static works... yes checking if x86_64-pc-linux-gnu-gfortran supports -c -o file.o... yes checking whether the x86_64-pc-linux-gnu-gfortran linker (/usr/x86_64-pc-linux-gnu/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking for initLibG15 in -lg15... yes checking for g15r_loadWbmpSplash in -lg15render... yes checking for sin in -lm... yes checking for pthread_mutex_init in -lpthread... yes checking for daemon... yes checking for an ANSI C-conforming const... yes checking for pid_t... yes checking for size_t... yes checking whether x86_64-pc-linux-gnu-gcc needs -traditional... no checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking sys/socket.h usability... yes checking sys/socket.h presence... yes checking for sys/socket.h... yes checking types of arguments for select... int,fd_set *,struct timeval * checking for strftime... yes checking for memset... yes checking for select... yes checking for socket... yes checking for strerror... yes checking for backtrace... yes checking for backtrace_symbols... yes checking for ANSI C header files... (cached) yes checking for sys/wait.h that is POSIX.1 compatible... yes checking linux/input.h usability... yes checking linux/input.h presence... yes checking for linux/input.h... yes checking execinfo.h usability... yes checking execinfo.h presence... yes checking for execinfo.h... yes checking linux/uinput.h usability... yes checking linux/uinput.h presence... yes checking for linux/uinput.h... yes checking for arpa/inet.h... yes checking for fcntl.h... yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking for sys/socket.h... (cached) yes checking for unistd.h... (cached) yes checking for libg15.h... yes checking for struct uinput_user_dev.id... yes configure: Necessary includes exist: Compiling Uinput Plugin configure: OS is Linux, using uinput if available configure: creating ./config.status config.status: creating Makefile config.status: creating g15daemon/Makefile config.status: creating libg15daemon_client/Makefile config.status: creating plugins/Makefile config.status: creating config.h config.status: executing depfiles commands >>> Source configured. >>> Compiling source in /var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3 ... make -j1 make all-recursive make[1]: Entering directory '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3' Making all in libg15daemon_client make[2]: Entering directory '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3/libg15daemon_client' /bin/sh ../libtool --tag=CC --mode=compile x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DDATADIR="\"/usr/share\"" -DPLUGINDIR=\"/usr/lib64/g15daemon/1.9.5.3/plugins\" -I/usr/include -O2 -pipe -march=native -fno-common -c -o g15daemon_net.lo g15daemon_net.c mkdir .libs x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -DDATADIR=\"/usr/share\" -DPLUGINDIR=\"/usr/lib64/g15daemon/1.9.5.3/plugins\" -I/usr/include -O2 -pipe -march=native -fno-common -c g15daemon_net.c -fPIC -DPIC -o .libs/g15daemon_net.o /bin/sh ../libtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -fno-common -version-info 1:2:0 -Wl,-O1 -Wl,--as-needed -o libg15daemon_client.la -rpath /usr/lib64 g15daemon_net.lo -lpthread -lm -lg15render -lg15 x86_64-pc-linux-gnu-gcc -shared .libs/g15daemon_net.o -lpthread -lm -lg15render -lg15 -march=native -Wl,-O1 -Wl,--as-needed -Wl,-soname -Wl,libg15daemon_client.so.1 -o .libs/libg15daemon_client.so.1.0.2 (cd .libs && rm -f libg15daemon_client.so.1 && ln -s libg15daemon_client.so.1.0.2 libg15daemon_client.so.1) (cd .libs && rm -f libg15daemon_client.so && ln -s libg15daemon_client.so.1.0.2 libg15daemon_client.so) creating libg15daemon_client.la (cd .libs && rm -f libg15daemon_client.la && ln -s ../libg15daemon_client.la libg15daemon_client.la) make[2]: Leaving directory '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3/libg15daemon_client' Making all in g15daemon make[2]: Entering directory '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3/g15daemon' x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I../libg15daemon_client/ -DDATADIR="\"/usr/share\"" -DPLUGINDIR=\"/usr/lib64/g15daemon/1.9.5.3/plugins\" -I/usr/include -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -c lcdclient_test.c lcdclient_test.c: In function ‘main’: lcdclient_test.c:55:6: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation] 55 | }else | ^~~~ lcdclient_test.c:58:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’ 58 | if(argc<2) | ^~ lcdclient_test.c:89:31: warning: format ‘%i’ expects argument of type ‘int’, but argument 2 has type ‘ssize_t’ {aka ‘long int’} [-Wformat=] 89 | printf("sent %i bytes\n",send(g15screen_fd, packet, 1, MSG_OOB )); | ~^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | | | | int ssize_t {aka long int} | %li lcdclient_test.c:70:17: warning: unused variable ‘foo’ [-Wunused-variable] 70 | int foo = 0; | ^~~ lcdclient_test.c:48:23: warning: variable ‘retval’ set but not used [-Wunused-but-set-variable] 48 | int g15screen_fd, retval; | ^~~~~~ /bin/sh ../libtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -Wl,-O1 -Wl,--as-needed -o g15daemontest lcdclient_test.o ../libg15daemon_client/libg15daemon_client.la -lpthread -lm -lg15render -lg15 mkdir .libs x86_64-pc-linux-gnu-gcc -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -Wl,-O1 -Wl,--as-needed -o .libs/g15daemontest lcdclient_test.o ../libg15daemon_client/.libs/libg15daemon_client.so -lpthread -lm -lg15render -lg15 creating g15daemontest x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I../libg15daemon_client/ -DDATADIR="\"/usr/share\"" -DPLUGINDIR=\"/usr/lib64/g15daemon/1.9.5.3/plugins\" -I/usr/include -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -c utility_funcs.c utility_funcs.c: In function ‘uf_create_pidfile’: utility_funcs.c:164:29: warning: operation on ‘l’ may be undefined [-Wsequence-point] 164 | if (write(fd, pidtxt, l = strlen(pidtxt)) != l) { | ~~^~~~~~~~~~~~~~~~ utility_funcs.c: In function ‘uf_conf_write’: utility_funcs.c:362:5: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 362 | write(config_fd,line,strlen(line)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utility_funcs.c:368:13: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 368 | write(config_fd,line,strlen(line)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ utility_funcs.c:376:21: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result] 376 | write(config_fd,line,strlen(line)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I../libg15daemon_client/ -DDATADIR="\"/usr/share\"" -DPLUGINDIR=\"/usr/lib64/g15daemon/1.9.5.3/plugins\" -I/usr/include -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -c main.c main.c: In function ‘main’: main.c:414:9: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation] 414 | for(i=1;ipw_uid); | ^~~~~~~~~~~~~~~~~~~~~~~ main.c:497:13: warning: ignoring return value of ‘setegid’, declared with attribute warn_unused_result [-Wunused-result] 497 | setegid(nobody->pw_gid); | ^~~~~~~~~~~~~~~~~~~~~~~ main.c:571:5: warning: ignoring return value of ‘seteuid’, declared with attribute warn_unused_result [-Wunused-result] 571 | seteuid(0); | ^~~~~~~~~~ main.c:572:5: warning: ignoring return value of ‘setegid’, declared with attribute warn_unused_result [-Wunused-result] 572 | setegid(0); | ^~~~~~~~~~ x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I../libg15daemon_client/ -DDATADIR="\"/usr/share\"" -DPLUGINDIR=\"/usr/lib64/g15daemon/1.9.5.3/plugins\" -I/usr/include -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -c linked_lists.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I../libg15daemon_client/ -DDATADIR="\"/usr/share\"" -DPLUGINDIR=\"/usr/lib64/g15daemon/1.9.5.3/plugins\" -I/usr/include -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -c g15_plugins.c In file included from /usr/include/string.h:494, from g15_plugins.c:34: In function ‘strncat’, inlined from ‘g15_count_plugins’ at g15_plugins.c:212:17: /usr/include/bits/string_fortified.h:136:10: warning: ‘__builtin___strncat_chk’ output may be truncated copying 200 bytes from a string of length 255 [-Wstringop-truncation] 136 | return __builtin___strncat_chk (__dest, __src, __len, __bos (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ g15_plugins.c: In function ‘g15_open_all_plugins’: g15_plugins.c:349:24: warning: ‘__builtin___sprintf_chk’ may write a terminating nul past the end of the destination [-Wformat-overflow=] 349 | sprintf(tmp,"%i",i); | ^ In file included from /usr/include/stdio.h:867, from g15_plugins.c:31: /usr/include/bits/stdio2.h:36:10: note: ‘__builtin___sprintf_chk’ output between 2 and 11 bytes into a destination of size 10 36 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 37 | __bos (__s), __fmt, __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ g15_plugins.c:326:34: warning: ‘__builtin___sprintf_chk’ may write a terminating nul past the end of the destination [-Wformat-overflow=] 326 | sprintf(tmp,"%i",loadcount); | ^ In file included from /usr/include/stdio.h:867, from g15_plugins.c:31: /usr/include/bits/stdio2.h:36:10: note: ‘__builtin___sprintf_chk’ output between 2 and 11 bytes into a destination of size 10 36 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 37 | __bos (__s), __fmt, __va_arg_pack ()); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/string.h:494, from g15_plugins.c:34: In function ‘strncat’, inlined from ‘g15_open_all_plugins’ at g15_plugins.c:323:17: /usr/include/bits/string_fortified.h:136:10: warning: ‘__builtin___strncat_chk’ output may be truncated copying 200 bytes from a string of length 255 [-Wstringop-truncation] 136 | return __builtin___strncat_chk (__dest, __src, __len, __bos (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /bin/sh ../libtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -rdynamic -Wl,-O1 -Wl,--as-needed -o g15daemon utility_funcs.o main.o linked_lists.o g15_plugins.o -ldl -lpthread -lm -lg15render -lg15 x86_64-pc-linux-gnu-gcc -DG15DAEMON_BUILD -Wall -O2 -pipe -march=native -fno-common -rdynamic -Wl,-O1 -Wl,--as-needed -o g15daemon utility_funcs.o main.o linked_lists.o g15_plugins.o -ldl -lpthread -lm -lg15render -lg15 /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: main.o:(.bss+0x60): multiple definition of `lcdlist_mutex'; utility_funcs.o:(.bss+0x80): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: main.o:(.bss+0x20): multiple definition of `g15lib_mutex'; utility_funcs.o:(.bss+0x40): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: main.o:(.bss+0xa0): multiple definition of `g15daemon_s'; utility_funcs.o:(.bss+0xc0): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: main.o:(.bss+0xe0): multiple definition of `lcdnode_s'; utility_funcs.o:(.bss+0x100): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: linked_lists.o:(.bss+0x40): multiple definition of `lcdlist_mutex'; utility_funcs.o:(.bss+0x80): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: linked_lists.o:(.bss+0x0): multiple definition of `g15lib_mutex'; utility_funcs.o:(.bss+0x40): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: linked_lists.o:(.bss+0x80): multiple definition of `g15daemon_s'; utility_funcs.o:(.bss+0xc0): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: linked_lists.o:(.bss+0xc0): multiple definition of `lcdnode_s'; utility_funcs.o:(.bss+0x100): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: g15_plugins.o:(.bss+0x40): multiple definition of `lcdlist_mutex'; utility_funcs.o:(.bss+0x80): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: g15_plugins.o:(.bss+0x0): multiple definition of `g15lib_mutex'; utility_funcs.o:(.bss+0x40): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: g15_plugins.o:(.bss+0x80): multiple definition of `g15daemon_s'; utility_funcs.o:(.bss+0xc0): first defined here /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: g15_plugins.o:(.bss+0xc0): multiple definition of `lcdnode_s'; utility_funcs.o:(.bss+0x100): first defined here collect2: error: ld returned 1 exit status make[2]: *** [Makefile:280: g15daemon] Error 1 make[2]: Leaving directory '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3/g15daemon' make[1]: *** [Makefile:407: all-recursive] Error 1 make[1]: Leaving directory '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3' make: *** [Makefile:213: all] Error 2 * ERROR: app-misc/g15daemon-1.9.5.3-r13::gentoo failed (compile phase): * emake failed * * If you need support, post the output of `emerge --info '=app-misc/g15daemon-1.9.5.3-r13::gentoo'`, * the complete build log and the output of `emerge -pqv '=app-misc/g15daemon-1.9.5.3-r13::gentoo'`. * The complete build log is located at '/var/log/portage/app-misc:g15daemon-1.9.5.3-r13:20200127-133347.log'. * For convenience, a symlink to the build log is located at '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/temp/environment'. * Working directory: '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3' * S: '/var/tmp/portage/app-misc/g15daemon-1.9.5.3-r13/work/g15daemon-1.9.5.3'