Skip to content

Does preprocessCore do ppc64?

13 messages · Loren Engrav, Brian Ripley, Benilton Carvalho +1 more

#
I tried
 options(arch="ppc64") in Rprofile
and seems to have worked, I think R.app is ppc64 in Leopard

But affy will not load as requires preprocessCore

Library(preprocessCore) returns

Error in dyn.load(file, ...) :
  unable to load shared library
'/Library/Frameworks/R.framework/Resources/library/preprocessCore/libs/ppc/p
reprocessCore.so':
  
dlopen(/Library/Frameworks/R.framework/Resources/library/preprocessCore/libs
/ppc/preprocessCore.so, 5): Library not loaded:
/Library/Frameworks/R.framework/Versions/2.6/Resources/lib/libgfortran.2.dyl
ib
  Referenced from: 
/Library/Frameworks/R.framework/Resources/library/preprocessCore/libs/ppc/pr
eprocessCore.so
  Reason: image not found
Error in library(preprocessCore) : .First.lib failed for 'preprocessCore'

I check libs in preprocessCore and find i386 and ppc, no ppc64

Does this mean preprocessCore as it stands does not do ppc64? Or I am
getting the wrong one? Or I must build 64bit? Or?

The original thread is in Bio but this seems like a Mac specific question

Thank you
#
The short answer is that the BioC binary packages are not 64-bit.  But 
then neither is the CRAN build of R 2.6.1 nor the CRAN binary packages.

And very likely you are running a 32-bit R.
On Thu, 13 Dec 2007, Loren Engrav wrote:

            
I am sure it 'worked' for some value of 'worked', but what do you think it 
did?  You can't change the architecture of a running R process (and you 
need a running R process to use R code ...).  You find out whether the 
process is 64-bit by checking

.Machine$sizeof.pointer == 8

and R.version$arch will also indicate the architecture name (x86_64 on my 
Macintel builds).

The sub-architecture (if any) of the running process is given by 
.Platform$r_arch and the user cannot change it (it was set at configure 
time).  From the output below, that is 'ppc'.  Not only do the 
architectures need to match, but do the sub-architecture settings: this is 
easy to achieve when building everything yourself, but not when taking 
binaries built on different systems by different people at different 
times.

So, it seems

- you are running a 32-bit R.
- you are missing a Fortran library.

Please do try to deduce from the output what the problem is, not guess and 
never test your guesses.
The CRAN build of 2.6.1 is not, and you haven't told us which build you 
are using.

AFAIK if you want 64-bit, you need to build packages from sources.

How to set all this up is AFAIK not fully documented, for the very good 
reason that it is *experimental*.  My understanding is that it is intended 
to support 64-bit MacOS binary builds from R 2.7.0 only.

  
    
#
Thank you, was helpful, is complicated for this geezer, but interesting

The whole goal is to ReadAffy() on 81 chips which seems to need 64 bit to
avoid "cannot allocate vector...." error (or reduce chips or analyze in
pieces but not yet ready to give up on this)

Other advisors advised

"Install Leopard 10.5.1

Now install either
    R-2.6-branch-leopard-universal.tar.gz
or
    R-devel-leopard-universal.tar.gz
depending on which version of BioC you want to use: the former is for BioC
2.1 (the current release) and the latter for BioC 2.2 (the current devel).

Then start R with --arch=ppc64 and you will be running in 64-bit
mode."

So I installed Leopard and R-2.6-branch and start with R --arch=ppc64

=========
and as you suggested while running Command Line
_   
platform       powerpc-apple-darwin9.0.0
arch           powerpc
os             darwin9.0.0
system         powerpc, darwin9.0.0
status         Patched
major          2   
minor          6.1 
year           2007
month          12  
day            12  
svn rev        43661
language       R   
version.string R version 2.6.1 Patched (2007-12-12 r43661)
[1] TRUE
[1] "powerpc"
[1] "ppc64"

============
Then I run R.app with options(arch="ppc64") in .Rprofile

And get
_   
platform       powerpc-apple-darwin9.1.0
arch           powerpc
os             darwin9.1.0
system         powerpc, darwin9.1.0
status         Patched
major          2   
minor          6.1 
year           2007
month          12  
day            12  
svn rev        43661
language       R   
version.string R version 2.6.1 Patched (2007-12-12 r43661)
[1] FALSE
[1] "powerpc"
[1] "ppc"
So would then seem at Command Line I have 64 but in R.app I do not

============
Then I try biocLite("preprocessCore") at Command Line and returns
[1] "ppc64"
R version 2.6.1 Patched (2007-12-12 r43661)
powerpc-apple-darwin9.0.0

locale:
en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

loaded via a namespace (and not attached):
[1] rcompgen_0.1-17
Running biocinstall version 2.1.8 with R version 2.6.1
Your version of R requires version 2.1 of Bioconductor.
trying URL 
'http://bioconductor.org/packages/2.1/bioc/bin/macosx/universal/contrib/2.6/
preprocessCore_1.0.0.tgz'
Content type 'application/x-gzip' length 157468 bytes (153 Kb)
opened URL
==================================================
downloaded 153 Kb


The downloaded packages are in
    
/var/folders/-O/-O2rx2VN2RWJgU+8ZMxMx++++TI/-Tmp-//RtmpHcRo5R/downloaded_pac
kages
Error: package 'preprocessCore' is not installed for 'arch=ppc64'
===============
Then I try same with R.app and returns
[1] "ppc"
R version 2.6.1 Patched (2007-12-12 r43661)
powerpc-apple-darwin9.1.0

locale:
en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base
Running biocinstall version 2.1.8 with R version 2.6.1
Your version of R requires version 2.1 of Bioconductor.
trying URL 
'http://bioconductor.org/packages/2.1/bioc/bin/macosx/universal/contrib/2.6/
preprocessCore_1.0.0.tgz'
Content type 'application/x-gzip' length 157468 bytes (153 Kb)
opened URL
==================================================
downloaded 153 Kb


The downloaded packages are in
    
/var/folders/-O/-O2rx2VN2RWJgU+8ZMxMx++++TI/-Tmp-//Rtmp3VK9Rw/downloaded_pac
kages
Error in dyn.load(file, ...) :
  unable to load shared library
'/Library/Frameworks/R.framework/Resources/library/preprocessCore/libs/ppc/p
reprocessCore.so':
  
dlopen(/Library/Frameworks/R.framework/Resources/library/preprocessCore/libs
/ppc/preprocessCore.so, 5): Library not loaded:
/Library/Frameworks/R.framework/Versions/2.6/Resources/lib/libgfortran.2.dyl
ib
  Referenced from: 
/Library/Frameworks/R.framework/Resources/library/preprocessCore/libs/ppc/pr
eprocessCore.so
  Reason: image not found
Error in library(preprocessCore) : .First.lib failed for 'preprocessCore'

=============
So to me seems with your investigative advice
1) I have 64bit at command line
2) I do not have 64bit in R.app
3) preprocessCore is not 64bit (and other packages)

So I am closer to 64bit ReadAffy of 81 files but still not there

With your serious knowledge, how should I get to 64bit ReadAffy

Thank you
#
On Dec 13, 2007, at 5:58 PM, Loren Engrav wrote:

            
That is a really bad idea (see the response you got previously). You  
cannot change the architecture in a running R and you also cannot use  
32-bit R.app with 64-bit R. If you want 64-bit R and the GUI, you have  
to use 64-bit R.app (which you have to build from the sources). Also  
note that R 2.6.1 doesn't have Quartz support in 64-bit, so the GUI  
won't be of much use. You have to use R-devel for Quartz in 64-bit.
I bet you didn't install the package from sources. CRAN/BioC offer 32- 
bit package binaries only, so you have to install all packages from  
sources (i.e. you must use type='source' in install.packages). Also  
you need all the necessary tools for this (please read the page you  
got the binaries from).

Cheers,
Simon
#
Thank you, maybe is coming into focus
Would appear that I have proven what you say is true
Couple lines up I included
Again proving you correct

And I see the directions on <http://r.research.att.com/> are changing which
is good for R/Bio R1's

So now what I wish to do is 64bit Readaffy
And can use 64bit command line which is painful but would work
But have no 64bit Bio packages

As I understand now
To get 64bit R.app I must get the tools and build it
To get 64bit Bio packages I must get the tools and build them

I might try this being this deep into this and finding it rather fun

One question before I start
You say
This means that from <http://r.research.att.com/>
Will not work, I MUST use
True? Even tho neither include R.app?

In preparation for this I have installed
Xcode 3 from the Leopard DVD
And
GNU Fortan 4.2.1
And
Will install LaTeX after massive download done

And did in Terminal...
export PATH=$PATH:/usr/local/bin
and
curl -s -S http://r.research.att.com/readline-5.2-1-quad.tar.gz|sudo tar fxz
- -C /  
and
curl -s -S http://r.research.att.com/jpegpng-quad.tar.gz|sudo tar fxz - -C /


And of course, maybe I should bag it, admit I am over my head, and let some
"expert" with dChip do it

But then what the hell? Why not try it, if you can tolerate my questions
that is, and I am closer to ReadAffy 64bit 81 cell as I now have command
line 64bit R
#
Hi Loren,

it seems you have all the tools to build the packages.

So, this is what you need:

1) load R from the command line using the 64 bits mode
2) type: source("http://www.bioconductor.org/biocLite.R")
3) type, note the "type" argument:

biocLite(c("Biobase", "affy", "preprocessCore"), type="source")

this will download the *source*, compile and install (64 bits)....

because R is under /Library (I assume), you want to load R using "sudo"

sudo R --arch=ppc64

btw, you want to repeat the same procedure for other packages you  
might need

b
On Dec 13, 2007, at 11:29 PM, Loren Engrav wrote:

            
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2419 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-sig-mac/attachments/20071213/c3b4b1d5/attachment-0001.bin
#
Thank you so much
Tomorrow when the martini's have worn off will try it
But there is the one more question

I have installed from page <http://r.research.att.com/>
R-2.6-branch
R 2.6.1 Patched (2007-12-12)

Must I install
R-devel
R 2.7.0 Under development
(unstable) (2007-12-12)

Who knows, I may one day ReadAffy on 81 .cel files
Which was the original goal of all of this

My wife say doing this by hand would have been quicker

Thank you
#
no need for R-2.7.0... unless i missed something... with R-2.6.0 i  
**think** you're going to be using command line only.

b
On Dec 14, 2007, at 12:03 AM, Loren Engrav wrote:

            
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2419 bytes
Desc: not available
Url : https://stat.ethz.ch/pipermail/r-sig-mac/attachments/20071214/b84b50a3/attachment-0001.bin
#
On Dec 13, 2007, at 11:29 PM, Loren Engrav wrote:

            
You don't have to, but you won't have Quartz graphics. You can still  
use the command line and X11 graphics in R 2.6.1. You indicated that  
you are interested in using R.app, so I just felt that I should warn  
you ;).
That's all you really need. Everything else is optional.
Those are necessary for building R, but not for packages. However, it  
doesn't hurt ;).
Yes :). Good luck.
I hope you have far more than 4GB of RAM in your machine, otherwise  
the whole exercise is probably futile...

Unfortunately I'm short of machines, so I can't offer more binaries  
for now ...

Cheers,
Simon
#
So my attempt to 64bit build failed, am so sorry
Running biocinstall version 2.1.8 with R version 2.6.1
Your version of R requires version 2.1 of Bioconductor.
trying URL 
'http://bioconductor.org/packages/2.1/bioc/src/contrib/simpleaffy_2.14.05.ta
r.gz'
Content type 'application/x-gzip' length 567142 bytes (553 Kb)
opened URL
==================================================
downloaded 553 Kb

/Library/Frameworks/R.framework/Resources/library
* Installing *source* package 'simpleaffy' ...
** libs
** arch - ppc64
gcc-4.2 -arch ppc64 -std=gnu99 -no-cpp-precomp
-I/Library/Frameworks/R.framework/Resources/include
-I/Library/Frameworks/R.framework/Resources/include/ppc64
-I/usr/local/include    -fPIC  -g -O2 -c simpleaffy.c -o simpleaffy.o
/bin/bash: gcc-4.2: command not found
make: *** [simpleaffy.o] Error 127
chmod: 
/Library/Frameworks/R.framework/Resources/library/simpleaffy/libs/ppc64/*:
No such file or directory
ERROR: compilation failed for package 'simpleaffy'
** Removing '/Library/Frameworks/R.framework/Resources/library/simpleaffy'
** Restoring previous
'/Library/Frameworks/R.framework/Resources/library/simpleaffy'

The downloaded packages are in
    /private/tmp/RtmpWzr4jD/downloaded_packages
Updating HTML index of packages in '.Library'
Warning message:
In install.packages(pkgs = pkgs, repos = repos, dependencies = dependencies,
:
  installation of package 'simpleaffy' had non-zero exit status




Please recall in preparation for this I did

Previously installed (will change to R-devel later to get Quartz and R.app)
installed
- -C / and
And to fire up did
And sessionInfo say
R version 2.6.1 Patched (2007-12-12 r43661)
powerpc-apple-darwin9.0.0

locale:
en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

loaded via a namespace (and not attached):
[1] rcompgen_0.1-17 tools_2.6.1

And .Platform say
[1] "ppc64"
And version say
_   
platform       powerpc-apple-darwin9.0.0
arch           powerpc
os             darwin9.0.0
system         powerpc, darwin9.0.0
status         Patched
major          2   
minor          6.1 
year           2007
month          12  
day            12  
svn rev        43661
language       R   
version.string R version 2.6.1 Patched (2007-12-12 r43661)

And echo say
Loren-Engravs-Dual-G5:bin engrav$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/usr/X11/bin

There is gfortran-4.2 in /usr/local/bin

All on Leopard 10.5.1 and G5 dual 2gh ppc

There are a bizillion google pages about
How to fix this on this system?

Thank you
#
Ah, well, that's the problem when you live on the cutting edge ;).  
There is one more issue - the Leopard build uses gcc-4.2 from Apple.  
Unfortunately it's not part of Xcode 3.0 :/. There are three ways to  
fix this:

a) get gcc42preview1.dmg from Apple if you have ADC membership that  
includes previews.
b) if you don't, you can install my build of gcc-42 from the R for Mac  
pages. It is similar, but not the same. However, use at your own risk.
c) force R to use gcc-4.0. The easiest is probably to run this in  
Terminal:
sudo ln -sfh gcc-4.0 /usr/bin/gcc-4.2
sudo ln -sfh g++-4.0 /usr/bin/g++-4.2

a) is best if you have access to it, c) is least invasive and can be  
undone by
sudo rm /usr/bin/gcc-4.2 /usr/bin/g++-4.2

Sorry, I forgot about this issue when responding earlier.

I can only repeat that this all is all experimental, we hope to have a  
more streamlined Leopard 64-bit support for R 2.7.0 including the GUI  
etc. Also using 64-bit is not necessarily better - it is a bit slower  
and pays off only with enough RAM (5-16GB).

Cheers,
Simon
On Dec 14, 2007, at 12:04 PM, Loren Engrav wrote:

            
#
me on the cutting edge? Hot damn

 so I went to ADC and got gcc42preview1.dmg and installed same
 then read in directions set target to process "C source files" using "GCC
4.2" and said damn, have no clue
 then said, will ignore, and started up R and tried biocLite

 and voila, PACKAGES ARE BEING INSTALLED, CAN YOU BELIEVE IT?

 now I need affy to ReadAffy, but there are a bizillion dependencies laid
out in a large tree, and have been working down thru the tree having been
successful at maybe 10 files and have arrived at genefilter and this
returned
Running biocinstall version 2.1.8 with R version 2.6.1
Your version of R requires version 2.1 of Bioconductor.
trying URL 
'http://bioconductor.org/packages/2.1/bioc/src/contrib/genefilter_1.16.0.tar
.gz'
Content type 'application/x-gzip' length 242543 bytes (236 Kb)
opened URL
==================================================
downloaded 236 Kb

/Library/Frameworks/R.framework/Resources/library
* Installing *source* package 'genefilter' ...
** libs
** arch - ppc64
g++-4.2 -arch ppc64 -no-cpp-precomp
-I/Library/Frameworks/R.framework/Resources/include
-I/Library/Frameworks/R.framework/Resources/include/ppc64
-I/usr/local/include    -fPIC  -g -O2 -c half_range_mode.cpp -o
half_range_mode.o
powerpc-apple-darwin9-g++-4.2.1: unrecognized option '-no-cpp-precomp'
half_range_mode.cpp: In function ?double half_range_mode(double*, double*,
double, int)?:
half_range_mode.cpp:101: warning: deprecated conversion from string constant
to ?char*?
gcc-4.2 -arch ppc64 -std=gnu99 -no-cpp-precomp
-I/Library/Frameworks/R.framework/Resources/include
-I/Library/Frameworks/R.framework/Resources/include/ppc64
-I/usr/local/include    -fPIC  -g -O2 -c init.c -o init.o
powerpc-apple-darwin9-gcc-4.2.1: unrecognized option '-no-cpp-precomp'
gcc-4.2 -arch ppc64 -std=gnu99 -no-cpp-precomp
-I/Library/Frameworks/R.framework/Resources/include
-I/Library/Frameworks/R.framework/Resources/include/ppc64
-I/usr/local/include    -fPIC  -g -O2 -c nd.c -o nd.o
powerpc-apple-darwin9-gcc-4.2.1: unrecognized option '-no-cpp-precomp'
gcc-4.2 -arch ppc64 -std=gnu99 -no-cpp-precomp
-I/Library/Frameworks/R.framework/Resources/include
-I/Library/Frameworks/R.framework/Resources/include/ppc64
-I/usr/local/include    -fPIC  -g -O2 -c pAUC.c -o pAUC.o
powerpc-apple-darwin9-gcc-4.2.1: unrecognized option '-no-cpp-precomp'
gcc-4.2 -arch ppc64 -std=gnu99 -no-cpp-precomp
-I/Library/Frameworks/R.framework/Resources/include
-I/Library/Frameworks/R.framework/Resources/include/ppc64
-I/usr/local/include    -fPIC  -g -O2 -c rowPAUCs.c -o rowPAUCs.o
powerpc-apple-darwin9-gcc-4.2.1: unrecognized option '-no-cpp-precomp'
gcc-4.2 -arch ppc64 -std=gnu99 -no-cpp-precomp
-I/Library/Frameworks/R.framework/Resources/include
-I/Library/Frameworks/R.framework/Resources/include/ppc64
-I/usr/local/include    -fPIC  -g -O2 -c rowttests.c -o rowttests.o
powerpc-apple-darwin9-gcc-4.2.1: unrecognized option '-no-cpp-precomp'
gfortran-4.2 -arch ppc64   -fPIC  -g -O2 -c ttest.f -o ttest.o
g++-4.2 -arch ppc64 -dynamiclib -Wl,-headerpad_max_install_names
-Wl,-macosx_version_min -Wl,10.4 -undefined dynamic_lookup -single_module
-multiply_defined suppress -L/usr/local/lib -o genefilter.so
half_range_mode.o init.o nd.o pAUC.o rowPAUCs.o rowttests.o ttest.o
-lgfortran -lSystemStubs
-L/Library/Frameworks/R.framework/Resources/lib/ppc64 -lR -dylib_file
libRblas.dylib:/Library/Frameworks/R.framework/Resources/lib/ppc64/libRblas.
dylib 
** R
** data
**  moving datasets to lazyload DB
** inst
** preparing package for lazy loading
Loading required package: Biobase
Loading required package: tools

Welcome to Bioconductor

  Vignettes contain introductory material. To view, type
  'openVignette()'. To cite Bioconductor, see
  'citation("Biobase")' and for packages 'citation(pkgname)'.

Loading required package: survival
Loading required package: splines
Error in library.dynam(lib, package, package.lib) :
  shared library 'RSQLite' not found
Calls: <Anonymous> ... loadNamespace -> namespaceImport -> loadNamespace ->
library.dynam
Execution halted
ERROR: lazy loading failed for package 'genefilter'
** Removing '/Library/Frameworks/R.framework/Resources/library/genefilter'
** Restoring previous
'/Library/Frameworks/R.framework/Resources/library/genefilter'

The downloaded packages are in
    /private/tmp/Rtmpbv42ud/downloaded_packages
Updating HTML index of packages in '.Library'
Warning message:
In install.packages(pkgs = pkgs, repos = repos, dependencies = dependencies,
:
  installation of package 'genefilter' had non-zero exit status
So say cannot find RSQLite

But installed.packages say
Package
AnnotationDbi  "AnnotationDbi"
Biobase        "Biobase"
Biostrings     "Biostrings"
DBI            "DBI"
DynDoc         "DynDoc"
GO             "GO"
KEGG           "KEGG"
KernSmooth     "KernSmooth"
MASS           "MASS"
RColorBrewer   "RColorBrewer"
ROC            "ROC"
RSQLite        "RSQLite"
affy           "affy"
affyPLM        "affyPLM"
affyQCReport   "affyQCReport"
affydata       "affydata"
affyio         "affyio"
annaffy        "annaffy"
annotate       "annotate"
base           "base"
boot           "boot"
class          "class"
cluster        "cluster"
codetools      "codetools"
datasets       "datasets"
foreign        "foreign"
gcrma          "gcrma"
genefilter     "genefilter"
geneplotter    "geneplotter"
grDevices      "grDevices"
graphics       "graphics"
grid           "grid"
hgu95av2       "hgu95av2"
lattice        "lattice"
limma          "limma"
marray         "marray"
matchprobes    "matchprobes"
methods        "methods"
mgcv           "mgcv"
multtest       "multtest"
nlme           "nlme"
nnet           "nnet"
preprocessCore "preprocessCore"
rcompgen       "rcompgen"
rpart          "rpart"
simpleaffy     "simpleaffy"
spatial        "spatial"
splines        "splines"
stats          "stats"
stats4         "stats4"
survival       "survival"
tcltk          "tcltk"
tools          "tools"
utils          "utils"
vsn            "vsn"
xtable         "xtable"

 with an RSQLite listed

 so if RSQLite is present, why can't biocLite find it?

 or have I missed something?
R version 2.6.1 Patched (2007-12-12 r43661)
powerpc-apple-darwin9.0.0

locale:
en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

loaded via a namespace (and not attached):
[1] rcompgen_0.1-17 tools_2.6.1
[1] "ppc64"

  
    
1 day later
#
I installed RSQLite over top of the old one and that solved the problem

Project is now over as I can ReadAffy and QCReport on the 81 .cel files in
64bit R/Bio

Will finish off in Bio thread also as that is where it started

Thank you all for the considerable help, I am grateful