Skip to content

Failed to build liboping #71

@cc-michaelu

Description

@cc-michaelu

I've been searching for a ping library solution and came across this project. We are trying to cross-compile for our target device and encounter a build failure, the output is included below.

michael_uman@cana-thinkpad ~/gitroot/liboping/build (master)$ make -j 4 
Making all in src
make[1]: Entering directory '/home/michael_uman/gitroot/liboping/build/src'
make  all-recursive
make[2]: Entering directory '/home/michael_uman/gitroot/liboping/build/src'
Making all in mans
make[3]: Entering directory '/home/michael_uman/gitroot/liboping/build/src/mans'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/michael_uman/gitroot/liboping/build/src/mans'
make[3]: Entering directory '/home/michael_uman/gitroot/liboping/build/src'
../aarch64-fslc-linux-gcc-libtool  --tag=CC   --mode=compile aarch64-fslc-linux-gcc  -mcpu=cortex-a53+crc+crypto -fstack-protector-strong  -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/opt/fslc-xwayland/3.1/sysroots/aarch64-fslc-linux -DHAVE_CONFIG_H -I. -I../../src    -Wall -Werror -O2 -pipe -g -feliminate-unused-debug-types  -c -o liboping_la-liboping.lo `test -f 'liboping.c' || echo '../../src/'`liboping.c
aarch64-fslc-linux-gcc-libtool: compile:  aarch64-fslc-linux-gcc -mcpu=cortex-a53+crc+crypto -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/opt/fslc-xwayland/3.1/sysroots/aarch64-fslc-linux -DHAVE_CONFIG_H -I. -I../../src -Wall -Werror -O2 -pipe -g -feliminate-unused-debug-types -c ../../src/liboping.c  -fPIC -DPIC -o .libs/liboping_la-liboping.o
../../src/liboping.c: In function ‘ping_host_add’:
../../src/liboping.c:207:9: error: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 243 [-Werror=format-truncation=]
  207 |    "%s: %s", function, message);
      |         ^~
......
 1650 |    ping_set_error (obj, "getaddrinfo", errmsg);
      |                                        ~~~~~~
In file included from /opt/fslc-xwayland/3.1/sysroots/aarch64-fslc-linux/usr/include/stdio.h:867,
                 from ../../src/liboping.c:30:
/opt/fslc-xwayland/3.1/sysroots/aarch64-fslc-linux/usr/include/bits/stdio2.h:67:10: note: ‘__builtin___snprintf_chk’ output between 14 and 269 bytes into a destination of size 256
   67 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   68 |        __bos (__s), __fmt, __va_arg_pack ());
      |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[3]: *** [Makefile:593: liboping_la-liboping.lo] Error 1
make[3]: Leaving directory '/home/michael_uman/gitroot/liboping/build/src'
make[2]: *** [Makefile:656: all-recursive] Error 1
make[2]: Leaving directory '/home/michael_uman/gitroot/liboping/build/src'
make[1]: *** [Makefile:431: all] Error 2
make[1]: Leaving directory '/home/michael_uman/gitroot/liboping/build/src'
make: *** [Makefile:393: all-recursive] Error 1

Our device uses a Yocto build SDK. I sourced the SDK environment and configured the project with the autoupdate and ./autogen.sh steps... When I tried to make the resulting project I got the error. I am using the following version of GCC:

michael_uman@cana-thinkpad ~/gitroot/liboping/build (master)$ aarch64-fslc-linux-gcc --version
aarch64-fslc-linux-gcc (GCC) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

It seems I may try turning off the -Werror=format-security flag in the $CXX environment which is used in the compile stage.

michael_uman@cana-thinkpad ~/gitroot/liboping/build (master)$ echo $CXX
aarch64-fslc-linux-g++ -mcpu=cortex-a53+crc+crypto -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/opt/fslc-xwayland/3.1/sysroots/aarch64-fslc-linux

Please advise me if there is an active maintainer of this project. And if I can provide a patch which fixes this I will push a PR.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions