Re: [Rd] alloca() on FreeBSD (PR#7890)

From: Rainer Hurling <rhurlin_at_gwdg.de>
Date: Tue 07 Jun 2005 - 16:36:21 GMT

One first reaction to your suggestions.

ripley@stats.ox.ac.uk wrote:
> On Mon, 23 May 2005 vangyzen@stat.duke.edu wrote:

>>R-2.1.0 fails to compile on the newest release of FreeBSD, complaining about
>>undefined references to __builtin_alloca.  On FreeBSD, alloca() is declared in
>>stdlib.h, not alloca.h as the R sources expect.  Therefore, HAVE_DECL_ALLOCA
>>does not get set, so the R sources declare alloca() after it has already been
>>#defined by stdlib.h.
>>
>>A possible fix is to modify the configure script to look for the declaration of
>>alloca() in stdlib.h (perhaps after it fails to find it in alloca.h).

>
>
> It is already supposed to, so it is not finding the declaration there
> either. If you look up the definition of
>
> AC_CHECK_DECLS([alloca], , , [#include <alloca.h>])
>
> it searches in stdlib.h. Can you please send us the appropriate part of
> config.log? It may be that this is failing because alloca.h is not found
> (but AC_FUNC_ALLOCA is making the same assumptions).
>
> Perhaps the easiest way out is to override the setting on FreeBSD: can
> you please confirm that manually changing
>
> #define HAVE_DECL_ALLOCA 1
>
> in config.h works?

Changing "#define HAVE_DECL_ALLOCA" to 1 in line 81 of R-2.1.0/src/include/config.h gives me the following stopping:

mkdir ../../../../library/grDevices/libs building package 'graphics'

mkdir ../../../library/graphics
mkdir ../../../library/graphics/R
mkdir ../../../library/graphics/demo
mkdir ../../../library/graphics/po
mkdir ../../../library/graphics/man
Error in dyn.load(x, as.logical(local), as.logical(now)) :
         unable to load shared library 

'/usr/local/R-2.1.0/library/grDevices/libs/grDevices.so':

   /usr/local/R-2.1.0/library/grDevices/libs/grDevices.so: Undefined symbol "__builtin_alloca"
Execution halted
*** Error code 1
Stop in /usr/local/R-2.1.0/src/library/graphics. *** Error code 1
Stop in /usr/local/R-2.1.0/src/library.
*** Error code 1
Stop in /usr/local/R-2.1.0/src.
*** Error code 1
Stop in /usr/local/R-2.1.0.

Because I have almost no skills in C, automake and autoconf I have no idea on how to go on, sorry.

Hopefully Eric makes considerable progress ...

-- 
Dr. Rainer Hurling                           Phone: (049) 551 69401-145
Abteilung Waldschutz, Sachgebiet Insekten    Fax:   (049) 551 69401-160
Niedersächsische Forstliche Versuchsanstalt  Mobil: (049) 160 5835-143
Grätzelstraße 2, D-37079 Göttingen, GERMANY  Rainer.Hurling@nfv.gwdg.de

______________________________________________
R-devel@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Wed Jun 08 02:40:41 2005

This archive was generated by hypermail 2.1.8 : Mon 20 Feb 2006 - 03:21:07 GMT