On Jun 28, 2011, at 3:01 PM, Hervé Pagès wrote: > Hi Uwe, > > On 11-06-28 01:44 AM, Uwe Ligges wrote: >> >> >> On 28.06.2011 01:31, Hervé Pagès wrote: >>> Hi, >>> >>> Why isn't 'R CMD check --force-multiarch' installing the package >>> for all the architectures that are going to be checked? >> >> Hervé, >> >> no, since it cannot know that that you need >> >> --merge-multiarch >> >> as an additional install flag for this particular package. > > Why not just use this flag anyway? Does it hurt to use it on packages that > don't strictly need it? >
It does for two reasons: a) everything is built twice and b) package authors don't expect the necessity to support --libs-only if the package doesn't require separate build runs. The cross-platform way is to not use --merge-multiarch but use --libs-only instead as needed (easy to check after the first arch run which will tell you whether it's needed or not). I suspect that --merge-multiarch is just a convenience shortcut (and it's unclear to me why it's Windows-only...). Cheers, Simon >> You will have to check it in repository maintainer's mode (as the CRAN >> maintainers do everywhere). Essentially this is for me (when also >> producing WIndows binaries): >> >> >> Step 1: Installation >> >> R CMD INSTALL --pkglock --compact-docs --build --merge-multiarch >> --library="D:/path/to/library" fabia_1.5.0.tar.gz > fabia-install.out 2>&1 >> >> (where the merge-multiarch part applies only to this package, of course) >> >> >> >> Step 2: Check (without installation, since that happened before already, >> using the install log from step 1) >> >> R CMD check --library="D:/path/to/library" --force-multiarch >> --install="check:fabia-install.out" fabia > > Whaoooo! Would be nice if there was a plan to make 'R CMD check' also > usable by normal people (including the package developer), not just > by a few privileged people that know about those undocumented tricks. > > Thanks, > H. > >> >> Best wishes, >> Uwe >> >> >> >> >> >> >> >> >>> For some packages, it only installs for the default arch ('i386'). >>> Then testing the package for 'x64' fails. >>> >>> For example, >>> >>> Output of R CMD check --force-multiarch fabia_1.5.0.tar.gz: >>> ----------------------------------------------------------- >>> * using log directory 'D:/biocbld/bbs-2.9-bioc/meat/fabia.Rcheck' >>> * using R version 2.14.0 Under development (unstable) (2011-05-30 r56020) >>> * using platform: i386-pc-mingw32 (32-bit) >>> * using session charset: ISO8859-1 >>> * using option '--no-vignettes' >>> * checking for file 'fabia/DESCRIPTION' ... OK >>> * this is package 'fabia' version '1.5.0' >>> * checking package name space information ... OK >>> * checking package dependencies ... OK >>> * checking if this is a source package ... OK >>> * checking whether package 'fabia' can be installed ... OK >>> * checking installed package size ... OK >>> * checking package directory ... OK >>> * checking for portable file names ... OK >>> * checking DESCRIPTION meta-information ... OK >>> * checking top-level files ... OK >>> * checking index information ... OK >>> * checking package subdirectories ... OK >>> * checking R files for non-ASCII characters ... OK >>> * checking R files for syntax errors ... OK >>> * loading checks for arch 'i386' >>> ** checking whether the package can be loaded ... OK >>> ** checking whether the package can be loaded with stated dependencies >>> ... OK >>> ** checking whether the package can be unloaded cleanly ... OK >>> ** checking whether the name space can be loaded with stated >>> dependencies ... OK >>> ** checking whether the name space can be unloaded cleanly ... OK >>> * loading checks for arch 'x64' >>> ** checking whether the package can be loaded ...Warning: running >>> command '"D:/biocbld/bbs-2.9-bioc/R/bin/x64/Rterm.exe" >>> R_ENVIRON_USER='no_such_file' --no-site-file --no-init-file --no-save >>> --no-restore --slave -f >>> D:\biocbld\bbs-2.9-bioc\tmpdir\RtmpO65p5H\Rin57456988' had status 1 >>> ERROR >>> Error: package 'fabia' is not installed for 'arch=x64' >>> Execution halted >>> >>> It looks like this package has a loading problem: see the messages for >>> details. >>> >>> Content of fabia.Rcheck\00install.out: >>> -------------------------------------- >>> >>> * installing *source* package 'fabia' ... >>> Building libRcpp.a in RcppSrc... >>> rm -f Rcpp.o libRcpp.a >>> g++ -c Rcpp.cpp -o Rcpp.o -I"D:/biocbld/BBS-2˜1.9-B/R/include" >>> -I"D:/biocbld/BBS-2˜1.9-B/R/src/include" -Wall -O2 >>> ar r libRcpp.a Rcpp.o >>> C:\Rtools213\MinGW\bin\ar.exe: creating libRcpp.a >>> ranlib libRcpp.a >>> rm -f Rcpp.o >>> rm -f Rcpp.o >>> ** libs >>> running src/Makefile.win ... >>> rm -f fabia.o fabia.dll *.a *.o *.so *.dll >>> g++ -c fabiac.cpp -o fabia.o -I../RcppSrc >>> -I"D:/biocbld/BBS-2˜1.9-B/R/include" -Wall -O2 >>> g++ -shared -s -static-libgcc fabia.o -L../RcppSrc -lRcpp >>> -L"D:/biocbld/BBS-2˜1.9-B/R/bin/i386" -lR -o fabia.dll >>> rm -f fabia.o *.a *.o *.so >>> installing to D:/biocbld/bbs-2.9-bioc/meat/fabia.Rcheck/fabia/libs/i386 >>> ** R >>> ** demo >>> ** inst >>> ** preparing package for lazy loading >>> Creating a generic function for "plot" from package "graphics" in >>> package "fabia" >>> ** help >>> *** installing help indices >>> ** building package indices ... >>> *** tangling vignette sources ... >>> 'fabia.Rnw' >>> ** testing if installed package can be loaded >>> >>> * DONE (fabia) >>> >>> The source tarball for this package is available here: >>> http://bioconductor.org/packages/2.9/bioc/html/fabia.html >>> >>> What command should be used to perform a multiarch check of this >>> package? >>> >>> This is on a 64-bit Windows Server 2008 R2 Enterprise machine using a >>> recent combined Windows 32/64 bit binary of R-devel from CRAN. >>> >>> Thanks! >>> H. >>> > > > -- > Hervé Pagès > > Program in Computational Biology > Division of Public Health Sciences > Fred Hutchinson Cancer Research Center > 1100 Fairview Ave. N, M1-B514 > P.O. Box 19024 > Seattle, WA 98109-1024 > > E-mail: hpa...@fhcrc.org > Phone: (206) 667-5791 > Fax: (206) 667-1319 > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel