Skip to content
Back to formatted view

Raw Message

Message-ID: <502085C3-4B64-4293-B6A5-59E84EE59BF2@unsw.edu.au>
Date: 2005-08-18T10:47:50Z
From: Bill Northcott
Subject: RMySQL not loading on Mac OS X
In-Reply-To: <A1E9E8E0-490E-422E-8CA4-267641F3C19B@tuebingen.mpg.de>

On 18/08/2005, at 7:46 PM, Georg Otto wrote:
> Concerning your suggestion: The system default compiler is gcc 4.0,  
> but RMySQL seems to be built using gcc-3.3 regardless if I switch  
> to 3.3. or not.
>
> Would it be a solution to force RMySQL to use gcc 4.0 during built?  
> (Might be a naive idea, I am quite new to this). And if yes, how  
> could I do this?

When R is built it stores the configuration including the compilers  
which were used.  When you try to build a source package, it uses the  
same compile commands.   However, this is a less than perfect  
mechanism and requires that the packagers of binaries understand what  
is going on.

For instance on Panther 'gcc' by default means gcc-3.3, whereas on  
Tiger by default it means gcc-4.0.  So a package built with 'gcc' and  
'g77' will work on Panther but not Tiger.  See the problem.

OTOH 'gcc-3.3' means gcc-3.3 on either Panther or Tiger, but  
'gcc-4.0' won't work on Panther at all.

The best solution is to build everything from source with the same  
compilers.  That way you cannot have a compatibility problems.

Hopefully soon the transition to gcc-4 will be complete.  The change  
to Intel guarantees that, because the Apple gcc-3.3 compilers don't  
do x86 code.  In a perfect future Apple will include Fortran in their  
Developer tools distribution, but for now they want gcc-4 and  
gfortran is not quite ready for the big time.

Bill Northcott