[Rd] cleanup and Makevars
Hin-Tak Leung
hin-tak.leung at cimr.cam.ac.uk
Thu Jul 12 21:10:03 CEST 2007
Kasper Daniel Hansen wrote:
> On Jul 11, 2007, at 9:30 AM, Prof Brian Ripley wrote:
<snipped>
>>> The full Makevars file:
>>>
>>> MYCXXFLAGS=-O0
>> You do realize that is highly non-portable?
>
> Yes, but I do not know of any other way to downgrade the optimization
> level. The SDK I am using breaks (due to memory alignment issues if a
> specific optimization flag for GCC is include - the flag is certainly
> implied by -O2 and as far as I recall also -O1). I guess the solution
> is to switch to an autoconfigure script. The main reason for not
> doing this is 1) time and actually more 2) the fact that the SDK does
> not come with an ac script.
>
> Thanks for the feedback, Kasper
<snipped>
I think I probably know about the breakage - gcc 4.x mis-compiles
the Affymetrix toolkit at the default optimization (-02) shipped with
the toolkit. (Prof Ripley's comment was spot-on - why the reluctance
to just call it the Affymetrix toolkit bundled with the bioconductor
package affyparser?). I narrowed it down to the strict-aliasing
option... try '-O2 -fno-strict-aliasing' - it is not portable, but it
works around the funny way some part of the affy toolkit (actually one
particular file) is written.
I did report it in the Affy forum and also directly to my Affymetrix
dev contacts about a year ago; gcc 4 is the default on the mac these
days, I think?
On a related issue, I have some annoyance with cross-compiling leaving
behind *.o files (and *.d, etc) which get in the way of native
compile and vice versa, and I have been wondering if there is a
recommended solution? What I am currently doing is to have a
"Makefile.utils" (I don't want or need a proper Makefile), and do
'make -f Makefile.utils clean' when I need to clean up - it is better
than typing
rm -f *.o *.so *~ *.rc *.d *.dll Makedeps *.def
(particularly with bash's file completion, all I am typing is
'make -f M<tab>f<tab> clean' to clean up). I am sure somebody will laugh
at this...
Hin-Tak
More information about the R-devel
mailing list