[ Ooops, resending, this time with the promised two additional
recipients. --Dirk ]
On 9 April 2006 at 07:44, Dirk Eddelbuettel wrote:
|
| Hi Andreas,
|
| On 23 April 2006 at 12:07, Andreas Jochens wrote:
| | Package: r-base
| | Version: 2.2.1.svn37668-1
| | Severity: wishlist
| | Tags: patch
| |
| |
| | When building 'r-base' on ppc64/unstable, I get the following error:
| |
| |
| | gcc -I. -I../../src/include -I../../src/include -DHAVE_CONFIG_H -fpic
-std=gnu99 -O2 -pipe -c vfonts.c -o vfonts.o
| | gfortran -fpic -O2 -pipe -c xxxpr.f -o xxxpr.o
| | gcc -shared -o libR.so Rembedded.o CConverters.o CommandLineArgs.o
Rdynload.o Renviron.o RNG.o apply.o arithmetic.o apse.o array.o attrib.o base.o
bind.o builtin.o character.o coerce.o colors.o complex.o connections.o
context.o cov.o cum.o dcf.o datetime.o debug.o deparse.o deriv.o dotcode.o
dounzip.o dstruct.o duplicate.o engine.o envir.o errors.o eval.o format.o
fourier.o gevents.o gram.o gram-ex.o graphics.o identical.o internet.o
iosupport.o lapack.o list.o localecharset.o logic.o main.o mapply.o match.o
memory.o model.o names.o objects.o optim.o optimize.o options.o par.o paste.o
pcre.o platform.o plot.o plot3d.o plotmath.o print.o printarray.o printvector.o
printutils.o qsort.o random.o regex.o registration.o relop.o rlocale.o
saveload.o scan.o seq.o serialize.o size.o sort.o source.o split.o sprintf.o
startup.o subassign.o subscript.o subset.o summary.o sysutils.o unique.o util.o
version.o vfonts.o xxxpr.o `ls ../appl/*.o ../nmath/*.o ../unix/*.o
2>/dev/null` -lgfortran -lm -lgcc_s -lreadline -lpcre -lbz2 -lz -ldl -lm
| | /usr/bin/ld: ../nmath/pbeta.o(.text+0x40): sibling call optimization to
`bratio' does not allow automatic multiple TOCs; recompile with -mminimal-toc
or -fno-optimize-sibling-calls, or make `bratio' extern
| | /usr/bin/ld: final link failed: Bad value
| | collect2: ld returned 1 exit status
| | make[4]: *** [libR.so] Error 1
| | make[4]: Leaving directory `/r-base-2.2.1.svn37668/src/main'
| |
| |
| | With the attached patch 'r-base' can be compiled on ppc64.
|
| Very interesting. So that must have been gcc/gfortan/g++ 4.0.3-3, correct ?
|
| | diff -urN ../tmp-orig/r-base-2.2.1.svn37668/debian/rules ./debian/rules
| | --- ../tmp-orig/r-base-2.2.1.svn37668/debian/rules 2006-04-09
08:37:31.000000000 +0000
| | +++ ./debian/rules 2006-04-09 07:03:04.000000000 +0000
| | @@ -75,6 +75,10 @@
| | cxxcompiler = g++
| | optimflags = -O2 -pipe
| |
| | +ifeq ($(arch),powerpc64)
| | +optimflags += -mminimal-toc
| | +endif
| | +
| | # edd 04 Sep 2001 default compiler flags, lowered for m68k
| | #compilerflags = -O2
| | # m68k barks when using g77, and when gcc use -O2
|
| Thanks for the detailed patch. I have applied it to my debian/rules, and I am
| CCing two of upstream authors as a heads-up. The option should be generally
| required and not be Debian specific, correct? Do you know if other
| optimization flags make a difference? As I recall, pbeta got quite a bit of
| attention for its algorithmic performance and correctness, so it is
| interesting to see the compiler complain. Could we count on you for some
| minimal testing?
|
| Regards, Dirk
|
| --
| Hell, there are no rules here - we're trying to accomplish something.
| -- Thomas A. Edison
--
Hell, there are no rules here - we're trying to accomplish something.
-- Thomas A. Edison