[Rd] [R] Problem compiling in extra/xdr
Prof Brian Ripley
ripley at stats.ox.ac.uk
Tue Jul 19 07:51:11 CEST 2011
On Mon, 18 Jul 2011, Allin Cottrell wrote:
> On Mon, 18 Jul 2011, Prof Brian Ripley wrote:
>> 1) R-help is the wrong list: see the posting guide. I've moved this to
>> 2) A glibc system should not be compiling in that directory. glibc 2.14 is
>> rather recent and NEWS does say
>> * The RPC implementation in libc is obsoleted. Old programs keep working
>> but new programs cannot be linked with the routines in libc anymore.
>> Programs in need of RPC functionality must be linked against TI-RPC.
>> The TI-RPC implementation is IPv6 enabled and there are other benefits.
>> Visible changes of this change include (obviously) the inability to link
>> programs using RPC functions without referencing the TI-RPC library and
>> removal of the RPC headers from the glibc headers.
>> Implemented by Ulrich Drepper.
>> So the answer seems to be that your libc is too new.
> OK, thanks. I should have remembered the info about RPC in the glibc-2.14
> news. Then there will presumably be a problem building current R on current
What is 'current Fedora'? glibc 2.14 postdates the current release,
Fedora 15, which uses 2.13. I do not know what Fedora 16 will use in
several months ....
The main problem will be that the xdr included in R is only for
platforms with 32-bit longs -- but that may be true for your i686
Linux. It needs _X86_ defined to compile for i686: I would have
expected that to be true on your platform, but am testing a cleaned-up
version. If that works it will appear in R-patched within 24 hours.
>> On Mon, 18 Jul 2011, Allin Cottrell wrote:
>>> I'm building R 2.13.1 on i686-pc-linux-gnu, using gcc 4.6.1
>>> and with glibc 2.14.
>>> I get this error:
>>> In file included from xdr.c:61:0:
>>> ./rpc/types.h:63:14: error: conflicting types for 'malloc'
>>> make: *** [xdr.o] Error 1
>>> I can make the build proceed some by commenting out the declaration
>>> "extern char *malloc();" in xdr/rpc/types.h,
>>> but then I get a slew of other errors:
>>> xdr_float.c: In function 'xdr_float':
>>> xdr_float.c:119:21: error: storage size of 'is' isn't known
>>> xdr_float.c:120:20: error: storage size of 'vs' isn't known
>>> and so on.
>>> config.log is rather big to post here; I'm putting it at
>>> http://www.wfu.edu/~cottrell/tmp/R.config.log .
>>> Allin Cottrell
>>> Department of Economics
>>> Wake Forest University, NC
>>> R-help at r-project.org mailing list
>>> PLEASE do read the posting guide
>>> and provide commented, minimal, self-contained, reproducible code.
> Allin Cottrell
> Department of Economics
> Wake Forest University
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel