[R] invalid \uxxxx sequence while trying to create a package

Prof Brian Ripley ripley at stats.ox.ac.uk
Sat Mar 22 08:49:42 CET 2008


Now, I wonder who Duncan meant by

    'one person on the list who can diagnose the problem'

?

Hint: small packages are not selected for lazyloading, so do your example 
with lazy loading set in the DESCRIPTION file.

If I do that, the example runs in R-devel but not in 2.6.2.  It is 
a locale issue: the C locale is used where that sequence is not valid.
(This is necessary: it is not valid in Japanese either and the run-time 
locale need not be the same as the install-time locale -- fortunately for 
the distribution of binary packages.)

I would suggest that you do not use \uxxxx sequences on Windows until 
2.7.0.  Here \xe2 will work equally well, or if you want to be as portable 
as possible iconv("\xe2", "latin1", "").  Or turn lazyloading off and rely 
on run-time parsing.

On Fri, 21 Mar 2008, Duncan Murdoch wrote:

> On 21/03/2008 6:01 PM, Charles Annis, P.E. wrote:
>> I'm running R2.6.2 on a DELL box with 2gig RAM, using Rtools (v26).
>>
>> I have a perplexing problem trying to build a package.
>>
>> I've created a small demonstration:
>>
>> problem.demo  <- function ()
>> {cat("\n          ***   \u00e2 vs a    ***\n")}
>>
>>
>> This function runs in an R gui session and Rtools makes a simple package
>> containing it alone or with a handful of similar routines.
>>
>> However, when I include it with a much bigger package (that Rtools has no
>> trouble in packaging without it), the result is an invalid \uxxxx sequence:
>>
>> Compile time: 0 minutes, 3 seconds
>> 171     Topics
>> 342     Local links
>> 171     Internet links
>> 1       Graphic
>>
>>
>> Created
>> c:\DOCUME~1\CHARLE~1\LOCALS~1\Temp\Rbuild406495938\mh1823\chm\mh1823.chm,
>> 149,803 bytes
>> Compression decreased file by 398,668 bytes.
>>   preparing package mh1823 for lazy loading
>> Loading required package: rcom
>> Loading required package: RODBC
>> Loading required package: RColorBrewer
>> Loading required package: survival
>> Loading required package: splines
>> Error in parse(n = -1, file = file) : invalid \uxxxx sequence
>> Calls: <Anonymous> -> code2LazyLoadDB -> sys.source -> parse
>> Execution halted
>> make: *** [lazyload] Error 1
>> *** Installation of mh1823 failed ***
>>
>> Removing 'C:/DOCUME~1/CHARLE~1/LOCALS~1/Temp/Rinst406445831/mh1823'
>>
>> Clearly I am overlooking something obvious, so I would greatly appreciate
>> any guidance.
>
> The general rules apply.
>
> "Make it reproducible".
>
> You've done that for yourself, but you haven't given instructions that
> let anyone else reproduce it.
>
> If you simplify your example to a minimal one that reproduces the error,
> there's a good chance you'll spot what is wrong:  but if not, there's a
> good chance someone else will be able to.
>
> If you post error messages without the code that causes them, there
> might be one person on the list who can diagnose the problem, but he's
> awfully busy.  Post complete instructions for reproducing it.
>
> Duncan Murdoch
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-help mailing list