Opened 9 days ago

Last modified 9 days ago

#3463 new defect

Compilation failure with >=glibc-2.14 due to missing rpc

Reported by: marisn Owned by: grass-dev@…
Priority: blocker Milestone: 7.4.0
Component: Compiling Version: svn-trunk
Keywords: xrpc Cc:
CPU: Unspecified Platform: Linux

Description

Recent glibc versions do not provide rpc, but GRASS expects it to be present. There is no failure during configuration phase if rpc is not present.

This issue will manifest itself on any GNU/Linux distro as soon as glibc gets upgraded to more recent version. Thus it needs to be fixed before upcoming release (unless we want to make fast 7.4.1 with a fix inside). Note – some distributions provide workarounds (i.e. on Gentoo rpc got removed only in 2.26).

Affected files:

grep -nHIirF --exclude-dir=.svn -- '<rpc/'
lib/raster/open.c:15:#include <rpc/types.h>
lib/raster/open.c:16:#include <rpc/xdr.h>
lib/raster/get_row.c:18:#include <rpc/types.h>          /* need this for sgi */
lib/raster/range.c:15:#include <rpc/types.h>            /* need this for sgi */

Things to do:

  • configuration must check for rpc presence and fail if rpc is missing;
  • dependency on rpc should be removed or an alternative should be examined (is current state of libtirpc good enough?)

Change History (2)

comment:1 Changed 9 days ago by neteler

Which glibc do you have?

Strange, because of r52015 ("Eliminate RPC/XDR dependency from raster library") and r71265 ("rasterlib: Eliminate RPC/XDR dependency from raster library (r52015 cont'd)").

I have locally eliminated the above include statements and it compiles fine (Fedora 26). Does this fail for you?

comment:2 in reply to:  1 Changed 9 days ago by neteler

Keywords: xrpc added

Replying to neteler:

Which glibc do you have?

Right, it was in the ticket title.

I have glibc-2.25-12.fc26.x86_64 and no problems.

Strange, because of r52015 ("Eliminate RPC/XDR dependency from raster library") and r71265 ("rasterlib: Eliminate RPC/XDR dependency from raster library (r52015 cont'd)").

I have locally eliminated the above include statements and it compiles fine (Fedora 26). Does this fail for you?

Now in trunk in r71902 (eliminated the superfluous headers). Please test.

If ok, then we backport it.

Note: See TracTickets for help on using tickets.