Simon Urbanek wrote:
On Jun 7, 2005, at 12:36 PM, Rainer Hurling wrote:
One first reaction to your suggestions.
[EMAIL PROTECTED] wrote:
On Mon, 23 May 2005 [EMAIL PROTECTED] 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
Did you run a new, clean build? From the output it seems as if you just
changed the file in your old build and typed make - obviously that
doesn't help at all, because the setting must the changed *before* you
start building. So if you didn't do so, please remove the build, unpack
the sources again, run configure, change the ALLOCA define and then build.
Simon,
thank you, but I am absolute sure I made a new, clean built:
1.) untar R-2.1.0.tar.gz
2.) cd R-2.1.0
3.) ./configure
4.) edit src/include/config.h [#define HAVE_DECL_ALLOCA 1]
5.) make
It seems to me that some files behave not like others in relation to
alloca.h (resp. stdlib.h)?
Please tell me, if I can help in any way,
Rainer
______________________________________________
R-devel@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel