From murdoch at stats.uwo.ca  Fri Oct  7 17:58:02 2005
From: murdoch at stats.uwo.ca (Duncan Murdoch)
Date: Fri, 07 Oct 2005 11:58:02 -0400
Subject: [Rd] Building packages on Windows fails
In-Reply-To: <Pine.LNX.4.63.0510071654410.1081@kleigh.nl>
References: <Pine.LNX.4.63.0510070000210.1079@kleigh.nl>	<Pine.LNX.4.62.0510062230530.6985@fisher.stats.uwo.ca>	<Pine.LNX.4.63.0510071457290.1081@kleigh.nl>	<Pine.LNX.4.61.0510071417300.1818@gannet.stats>
	<Pine.LNX.4.63.0510071654410.1081@kleigh.nl>
Message-ID: <43469B0A.7070709@stats.uwo.ca>

Peter Kleiweg wrote:
> Prof Brian Ripley schreef op de 7e dag van de wijnmaand van het jaar 2005:
> 
> 
>>On Fri, 7 Oct 2005, Peter Kleiweg wrote:
>>
>>
>>>Duncan Murdoch schreef op de 6e dag van de wijnmaand van het jaar 2005:
>>>
>>>
>>>>On Fri, 7 Oct 2005, Peter Kleiweg wrote:
>>>>
>>>>
>>>>>What has changed in R for Windows from version 1.7.1 to 
>>>>>2.2.0 that won't allow me to build binary packages?
>>>>
>>>>Many things have changed; I don't know which is causing 
>>>>the failure you see. One change is that instructions are 
>>>>now collected in the Installation and Administration 
>>>>manual. Try following the setup instructions there and see 
>>>>if it still fails.
>>>
>>>I can't find anything on building packages for Windows in 
>>>that manual.
>>
>>Your problems was installing, so the section on `Installing 
>>Packages' should help you.
> 
> 
> Installing worked fine. Building a binary distribution (with 
> compiled help files) is what didn't work.
> 
> This worked fine:
> 
>     Rcmd build iL04
> 
> But that just gave a gzip'ed tarfile, not a zip-file, and 
> without the compiled helpfiles.
> 
> This didn't work:
> 
>     Rcmd build --force --binary iL04
> 
> 
> 
>>>I did find a solution to the problem. On a Linux install, 
>>>each package has a file CONTENTS. These are missing from the 
>>>Windows install. I copied those files from my Linux install 
>>>to my Windows install, and then I could build my own 
>>>package. So I guess, these CONTENTS files should be included 
>>>in the Windows install.
>>
>>And indeed they are, as the presence of 500+ packages on CRAN 
>>for Windows will show you.
> 
> 
> Well, I just ran the install program for Windows, with compiled 
> html help, but without the ordinary html help files. In that 
> case, no CONTENTS files get installed.
>  
> 
>>The recommended way to build a binary package on Windows is
>>
>>R CMD INSTALL --build
> 
> 
> Yes, that works. Even without the CONTENTS files. And this is 
> recommended in the manual "Creating R packages", another manual 
> than Duncan Murdoch was referring to.
> 
> I was using a method that was recommended in earlier versions. 
> Perhaps that method should just be disabled, with a 
> message about the current method, instead of having it fail for 
> obscure reasons.

I agree there should be only one method, and it should work.  The 
problem is:

  - Users with limited permissions can't run INSTALL, because it needs 
write access to R_HOME/library.

  - Because Windows doesn't have soft links, the only way we have to get 
cross references in the help files to work is to install to R_HOME/library.

I'd prefer to fix "Rcmd build --binary" so that it got the help links 
right and then have "Rcmd INSTALL --build" use it first, then install 
the .zip file, but I haven't taken the time to do this.  I don't like 
having two parallel tracks of very similar code (because of problems 
like yours, where the one I don't personnally use falls out of date and 
stops working).

Duncan Murdoch



[Rd] Building packages on Windows fails
Duncan Murdoch