[Rd] [R] Problem compiling in extra/xdr
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Jul 20 09:21:07 CEST 2011
1) The current R-patched should compile src/extra/xdr on 32-bit Linux
2) Longer-term or on a 64-bit platform the solution is to make use of
libtirpc: you would need both this installed (common now) and its
Then if you arrange for /usr/include/tirpc to be in the C include path
(not easy to do portably, but using C_INCLUDE_PATH will work on
Linux), the tirpc versions should be found.
On Tue, 19 Jul 2011, Prof Brian Ripley wrote:
> 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
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