Bug 1539142 - build fails if libtiprc is present but IPv6 is not enabled
Summary: build fails if libtiprc is present but IPv6 is not enabled
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: build
Version: mainline
Hardware: Unspecified
OS: Unspecified
unspecified
low
Target Milestone: ---
Assignee: Csaba Henk
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-01-26 18:47 UTC by Csaba Henk
Modified: 2019-09-28 18:50 UTC (History)
1 user (show)

Fixed In Version: glusterfs-4.1.3 (or later)
Clone Of:
Environment:
Last Closed: 2018-08-29 03:37:30 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Csaba Henk 2018-01-26 18:47:29 UTC
Description of problem:

Build fails if libtiprc (and libtirpc-devel) are installed on the system, but --with-ipv6-default is not set.

Making all in rpc-lib
Making all in src
  CC       auth-unix.lo
  CC       rpcsvc-auth.lo
  CC       rpcsvc.lo
[...]
rpcsvc.c: In function 'rpcsvc_callback_build_record':
rpcsvc.c:1002:9: error: implicit declaration of function 'xdr_sizeof' [-Werror=implicit-function-declaration]
         xdr_size = xdr_sizeof ((xdrproc_t)xdr_callmsg, &request);
         ^
cc1: some warnings being treated as errors
make[4]: *** [rpcsvc.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [all-recursive] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Version-Release number of selected component (if applicable):

See "Additional info" for the commits causing this.

Additional info:

This error message appeared with https://review.gluster.org/18834, but https://review.gluster.org/18970 mitigated it for the case when --with-ipv6-default is used. However, a libtirpc-but-no-IPv6 build is still not covered.
Note that libtirpc is picked up if present, so no --with-libtirpc option is required to trigger this, only presence of libtirpc{,-devel}.

Workaround: building with "--with-libtirpc=no".

Beyond the mere fix, it could be considered to default to --with-libtirpc=no (unless -with-ipv6-default is used).

Comment 1 Csaba Henk 2018-01-27 10:50:15 UTC
As for the suggestion at the end of the description:

"Beyond the mere fix, it could be considered to default to --with-libtirpc=no (unless -with-ipv6-default is used)."

-- I see now that defaulting to picking up libtirpc if present is intentional, see https://review.gluster.org/19235.

Comment 2 Worker Ant 2018-01-27 11:44:23 UTC
REVIEW: https://review.gluster.org/19346 (rpc: use native libtirpc macro to enable libtirpc compat construct) posted (#1) for review on master by Csaba Henk

Comment 3 Amar Tumballi 2018-08-29 03:37:30 UTC
This update is done in bulk based on the state of the patch and the time since last activity. If the issue is still seen, please reopen the bug.

Comment 4 Yaniv Kaul 2019-09-28 18:50:59 UTC
I always fail on this on CentOS 7 - the user experience is bad. Why not have those as defaults in EL7? (meaning '--with-libtirpc=no')


Note You need to log in before you can comment on or make changes to this bug.