Re: [Rd] Error compiling on HP-UX

From: Peter Dalgaard <P.Dalgaard_at_biostat.ku.dk>
Date: Mon 18 Dec 2006 - 15:29:07 GMT

Pascal A. Niklaus wrote:
> Dear all,
>
> I hope this is the right mailing list for my question -- I felt that this was
> too technical for R-help.
>
> I am trying to compile R-2.4.0 on a HP-UX system:
>
> ./configure
> MAKE=gmake --prefix=$HOME --without-x --without-tcltk --disable-R-profiling --without-readline --disable-multibyte
>
> R is now configured for ia64-hp-hpux11.23
>
> Source directory: .
> Installation directory: /home/agrl/pniklaus
>
> C compiler: gcc -g -O2 -std=gnu99
> Fortran 77 compiler: f90 -g
>
> C++ compiler: g++ -g -O2
> Fortran 90/95 compiler: f90 -g
>
> Interfaces supported:
> External libraries:
> Additional capabilities: NLS
> Options enabled: shared BLAS
>
> Recommended packages: yes
>
> gmake gives me the following error:
>
> gcc -I../../src/extra/zlib -I../../src/extra/bzip2 -I../../src/extra/pcre -I. -I../../src/include -I../../src/include -I/home/agrl/pniklaus/include -DHAVE_CONFIG_H -g -O2 -std=gnu99 -c
> platform.c -o platform.o
> In file included from /usr/include/netdb.h:69,
> from platform.c:1428:
> /usr/include/sys/socket.h:535: error: static declaration of 'sendfile' follows
> non-static declaration
> /usr/include/sys/socket.h:506: error: previous declaration of 'sendfile' was
> here
> /usr/include/sys/socket.h:536: error: static declaration of 'sendpath' follows
> non-static declaration
> /usr/include/sys/socket.h:508: error: previous declaration of 'sendpath' was
> here
>
> I am not sure whether this is a problem with the platform's installed
> libraries or with the way R includes these files. Including netdb.h alone in
> a test file does not result in any error.
>
>
This sits in the include file: We have unconditional declarations

   extern sbsize_t sendfile __((int, int, off_t, bsize_t,

                               const struct iovec *, int));
   extern sbsize_t sendpath __((int, char *, off_t, bsize_t,
                               const struct iovec *, int));

and then later on

#ifdef __STDC__
static sbsize_t sendfile __((int, int, off_t, bsize_t, const struct iovec *, int));
static sbsize_t sendpath __((int, char *, off_t, bsize_t, const struct iovec *, int));
...

which I guess is detected as an error by the gcc compiler. There might be a way of turning this check off, but I can't spot any in my man page for gcc.
> I have put config.h, config.log and the socket.h files on the web:
>
> http://azug.minpet.unibas.ch/~pascal/R/config.log
> http://azug.minpet.unibas.ch/~pascal/R/config.h
> http://azug.minpet.unibas.ch/~pascal/R/socket.h
>
> Is there any further information I can provide
>

The gcc version might be helpful
> Thank you for your help
>
> Pascal Niklaus
>
> ______________________________________________
> R-devel@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

-- 
   O__  ---- Peter Dalgaard             ุster Farimagsgade 5, Entr.B
  c/ /'_ --- Dept. of Biostatistics     PO Box 2099, 1014 Cph. K
 (*) \(*) -- University of Copenhagen   Denmark          Ph:  (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk)                  FAX: (+45) 35327907

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Tue Dec 19 12:58:47 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Tue 19 Dec 2006 - 07:31:00 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.