From ripley at stats.ox.ac.uk  Sun Dec 27 08:01:04 2009
From: ripley at stats.ox.ac.uk (Prof Brian Ripley)
Date: Sun, 27 Dec 2009 07:01:04 +0000 (GMT)
Subject: [Rd] Problem compiling R library on FC4 ( conflicting
 declaration in Rinterface.h and stdint.h)
In-Reply-To: <0AEF0B3E-C385-4F0F-A27F-817109A28B52@me.com>
References: <1e7471d50912261341m64f121aekdd8ebd4c99a679ff@mail.gmail.com>
	<0AEF0B3E-C385-4F0F-A27F-817109A28B52@me.com>
Message-ID: <alpine.LFD.2.00.0912270655590.18065@gannet.stats.ox.ac.uk>

On Sat, 26 Dec 2009, Marc Schwartz wrote:

> FC4?  Really?

That was my reaction, but I think there may be another problem.  The 
subject line said 'R library', the body said 'The package'.  What are 
we talking about here?  Rinterface.h is intended for alternative 
front-ends (see the comments in the file), and there ought to be a 
configure script in such front-ends, defining e.g. HAVE_UINTPTR_T.

We were not told the version of R: maybe that is equally old?

> That has not been supported in over 3 years.
>
> The only versions of Fedora currently supported are 11 and 12. You need to 
> get that machine updated.
>
> My vague recollection was that there were a variety of fortran compiler 
> issues around that time (circa 2005/2006) with FC4, though I could not locate 
> anything specific regarding the error message you are observing.

(S)he is using C++.

> Get your computer updated to a current version of Fedora, if that is the 
> Linux distribution you wish to stay with. Trying to debug compiler problems 
> on a Linux distribution that itself has not been supported in a long time is 
> asking for trouble.
>
> Marc Schwartz
>
>
> On Dec 26, 2009, at 3:41 PM, Saptarshi Guha wrote:
>
>> Hello,
>> The package builds successfully on RHEL5 and OS X( 64 bit,32/64
>> respectively) but on FC4(32 bit) it fails with this error
>> 
>> g++ -m32 -I/usr/include/R  -I/usr/local/include    -fpic  -O2 -g -pipe
>> -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
>> --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic
>> -fasynchronous-unwind-tables -I. -g  `pkg-config --cflags protobuf`
>> -Wall -c display.cc -o display.o
>> 
>> /usr/include/R/Rinterface.h:84: error: conflicting declaration
>> 'typedef long unsigned int uintptr_t'
>> /usr/include/stdint.h:129: error: 'uintptr_t' has a previous
>> declaration as 'typedef unsigned int uintptr_t'
>> 
>> 
>> display.cc includes a header file ream.h which has
>> 
>> #ifndef __ream_h
>> #define __ream_h
>> 
>> #include <iostream>
>> #include <google/protobuf/stubs/common.h>
>> 
>> #include <rexp.pb.h>
>> #include <stdint.h>  //commenting this does not make a difference
>> #include <sys/types.h>
>> #include <sys/time.h>
>> #include <time.h>
>> #include <errno.h>
>> #include <fcntl.h>
>> #include <signal.h>
>> #include <stdio.h>
>> #include <stdlib.h>
>> #include <string.h>
>> #include <unistd.h>
>> #include <sys/wait.h>
>> 
>> #define R_NO_REMAP
>> #define R_INTERFACE_PTRS 1
>> #define CSTACK_DEFNS 1
>> 
>> #include <Rversion.h>
>> #include <R.h>
>> #include <Rdefines.h>
>> 
>> #include <Rinterface.h>
>> #include <Rembedded.h>
>> #include <R_ext/Boolean.h>
>> #include <R_ext/Parse.h>
>> #include <R_ext/Rdynload.h>
>> 
>> 
>> Thanks
>> Saptarshi

-- 
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



[Rd] Problem compiling R library on FC4 ( conflicting declaration in Rinterface.h and stdint.h)
Prof Brian Ripley