install.packages('pbdZMQ') fails with the following output. This occurs on CentOS 8, with both GCC 8.3.0 and GCC 9.3.0 building both R 3.6.3 and R 4.0.3.
...
CXX src/src_libzmq_la-msg.lo
In member function 'int zmq::msg_t::set_group(const char, size_t)',
inlined from 'int zmq::msg_t::set_group(const char)' at src/msg.cpp:549:22:
src/msg.cpp:560:13: error: 'char strncpy(char, const char, sizet)' output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation]
560 | strncpy (u.base.group, group, length_);
| ~~^~~~~~~~~
src/msg.cpp: In member function 'int zmq::msg_t::set_group(const char)':
src/msg.cpp:549:22: note: length computed here
549 | return setgroup (group, strlen (group_));
| ~~^~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: [Makefile:3502: src/src_libzmq_la-msg.lo] Error 1
make[2]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc'
make[1]: [Makefile:4067: all-recursive] Error 1
make[1]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc'
make[1]: Entering directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc'
make[2]: Entering directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc'
CXX src/src_libzmq_la-msg.lo
In member function 'int zmq::msg_t::set_group(const char, size_t)',
inlined from 'int zmq::msg_t::set_group(const char)' at src/msg.cpp:549:22:
src/msg.cpp:560:13: error: 'char strncpy(char, const char, sizet)' output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation]
560 | strncpy (u.base.group, group, length_);
| ~~^~~~~~~~~
src/msg.cpp: In member function 'int zmq::msg_t::set_group(const char)':
src/msg.cpp:549:22: note: length computed here
549 | return setgroup (group, strlen (group_));
| ~~^~~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: [Makefile:3502: src/src_libzmq_la-msg.lo] Error 1
make[2]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc'
make[1]: [Makefile:4067: install-recursive] Error 1
make[1]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc'
make: *** [Makevars:52: libzmq] Error 2
ERROR: compilation failed for package ‘pbdZMQ’
The downloaded source packages are in
‘/tmp/Rtmpoj1kpA/downloaded_packages’
Updating HTML index of packages in '.Library'
Making 'packages.html' ... done
Warning message:
In install.packages("pbdZMQ") :
installation of package ‘pbdZMQ’ had non-zero exit status
install.packages('pbdZMQ') fails with the following output. This occurs on CentOS 8, with both GCC 8.3.0 and GCC 9.3.0 building both R 3.6.3 and R 4.0.3.
...
CXX src/src_libzmq_la-msg.lo In member function 'int zmq::msg_t::set_group(const char, size_t)', inlined from 'int zmq::msg_t::set_group(const char)' at src/msg.cpp:549:22: src/msg.cpp:560:13: error: 'char strncpy(char, const char, sizet)' output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation] 560 | strncpy (u.base.group, group, length_); |
~~^~~~~~~~~ src/msg.cpp: In member function 'int zmq::msg_t::set_group(const char)': src/msg.cpp:549:22: note: length computed here 549 | return setgroup (group, strlen (group_)); |~~^~~~~~~~~ cc1plus: all warnings being treated as errors make[2]: [Makefile:3502: src/src_libzmq_la-msg.lo] Error 1 make[2]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc' make[1]: [Makefile:4067: all-recursive] Error 1 make[1]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc' make[1]: Entering directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc' make[2]: Entering directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc' CXX src/src_libzmq_la-msg.lo In member function 'int zmq::msg_t::set_group(const char, size_t)', inlined from 'int zmq::msg_t::set_group(const char)' at src/msg.cpp:549:22: src/msg.cpp:560:13: error: 'char strncpy(char, const char, sizet)' output truncated before terminating nul copying as many bytes from a string as its length [-Werror=stringop-truncation] 560 | strncpy (u.base.group, group, length_); |~~^~~~~~~~~ src/msg.cpp: In member function 'int zmq::msg_t::set_group(const char)': src/msg.cpp:549:22: note: length computed here 549 | return setgroup (group, strlen (group_)); |~~^~~~~~~~~ cc1plus: all warnings being treated as errors make[2]: [Makefile:3502: src/src_libzmq_la-msg.lo] Error 1 make[2]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc' make[1]: [Makefile:4067: install-recursive] Error 1 make[1]: Leaving directory '/tmp/Rtmp6LQF6D/R.INSTALLa991b433469e6/pbdZMQ/src/zmqsrc' make: *** [Makevars:52: libzmq] Error 2 ERROR: compilation failed for package ‘pbdZMQ’The downloaded source packages are in ‘/tmp/Rtmpoj1kpA/downloaded_packages’ Updating HTML index of packages in '.Library' Making 'packages.html' ... done Warning message: In install.packages("pbdZMQ") : installation of package ‘pbdZMQ’ had non-zero exit status