[R-pkg-devel] Errors in make check in Windows 10 with OpenBLAS

Erin Hodgess er|nm@hodge@@ @end|ng |rom gm@||@com
Fri Mar 20 15:04:36 CET 2020


Great idea!

Thanks

On Fri, Mar 20, 2020 at 8:03 AM Tomas Kalibera <tomas.kalibera using gmail.com>
wrote:

> Hi Erin,
>
> when you are building from sources, you can always uncomment the example
> in str.Rd. But it would be good first to find out why it is failing on your
> system/build.
>
> Please run the example in Rgui of the official R 3.6.3 build on your
> machine. Does it work there?
>
> Please run the following commands in Rgui of the official R 3.6.3 build on
> the machine and on your custom build. What do you get?
>
> Sys.getlocale()
> enc2native("\uff21")
> enc2native("\u4e2d")
> Sys.setlocale("LC_CTYPE", "English_United States.28605")
> enc2native("\uff21")
> enc2native("\u4e2d")
> extSoftVersion()[c("iconv","BLAS")]
> Thanks,
> Tomas
>
> On 3/20/20 2:35 PM, Erin Hodgess wrote:
>
> I was wondering if there is a way to either skip the utilities check and
> continuing, in order to test the other packages, please.
>
> Thanks!
>
>
> On Fri, Mar 20, 2020 at 5:01 AM Martin Maechler <
> maechler using stat.math.ethz.ch> wrote:
>
>> >>>>> Erin Hodgess    on Thu, 19 Mar 2020 22:44:39 -0600 writes:
>>
>>      > Hi Tomas and others:
>>      > Here is the session Info.  I also used the str example both
>> without and
>>      > with changing the locale.
>>
>>      > sI <- sessionInfo()
>>     >> str(sI)
>>      > List of 10
>>      > $ R.version :List of 14
>>      > ..$ platform      : chr "x86_64-w64-mingw32"
>>      > ..$ arch          : chr "x86_64"
>>      > ..$ os            : chr "mingw32"
>>      > ..$ system        : chr "x86_64, mingw32"
>>      > ..$ status        : chr ""
>>      > ..$ major         : chr "3"
>>      > ..$ minor         : chr "6.3"
>>      > ..$ year          : chr "2020"
>>      > ..$ month         : chr "02"
>>      > ..$ day           : chr "29"
>>      > ..$ svn rev       : chr "77875"
>>      > ..$ language      : chr "R"
>>      > ..$ version.string: chr "R version 3.6.3 (2020-02-29)"
>>      > ..$ nickname      : chr "Holding the Windsock"
>>      > $ platform  : chr "x86_64-w64-mingw32/x64 (64-bit)"
>>      > $ locale    : chr "LC_COLLATE=English_United
>>      > States.1252;LC_CTYPE=English_United
>> States.1252;LC_MONETARY=English_United
>>      > States.125"| __truncated__
>>      > $ running   : chr "Windows 10 x64 (build 18362)"
>>      > $ RNGkind   : chr [1:3] "Mersenne-Twister" "Inversion" "Rejection"
>>      > $ basePkgs  : chr [1:7] "stats" "graphics" "grDevices" "utils" ...
>>      > $ loadedOnly:List of 1
>>      > ..$ compiler:List of 9
>>      > .. ..$ Package    : chr "compiler"
>>      > .. ..$ Version    : chr "3.6.3"
>>      > .. ..$ Priority   : chr "base"
>>      > .. ..$ Title      : chr "The R Compiler Package"
>>      > .. ..$ Author     : chr "Luke Tierney <luke-tierney using uiowa.edu>"
>>      > .. ..$ Maintainer : chr "R Core Team <R-core using r-project.org>"
>>      > .. ..$ Description: chr "Byte code compiler for R."
>>      > .. ..$ License    : chr "Part of R 3.6.3"
>>      > .. ..$ Built      : chr "R 3.6.3; ; 2020-03-20 04:29:00 UTC;
>> windows"
>>      > .. ..- attr(*, "class")= chr "packageDescription"
>>      > .. ..- attr(*, "file")= chr
>>      > "c:/newtimeR/R-3.6.3/library/compiler/Meta/package.rds"
>>      > $ matprod   : chr "default"
>>      > $ BLAS      : chr ""
>>      > $ LAPACK    : chr ""
>>      > - attr(*, "class")= chr "sessionInfo"
>>
>>
>>      > Running the str example WITHOUT changing the locale:
>>     >> ## Truncation behavior (<-> correct width measurement) for "long"
>>      > non-ASCII:
>>     >> idx <- c(65313:65338, 65345:65350)
>>     >> fwch <- intToUtf8(idx) # full width character string: each has
>> width 2
>>     >> ch <- strtrim(paste(LETTERS, collapse="._"), 64)
>>     >> (ncc <- c(c.ch = nchar(ch),   w.ch = nchar(ch,   "w"),
>>      > +           c.fw = nchar(fwch), w.fw = nchar(fwch, "w")))
>>      > c.ch w.ch c.fw w.fw
>>      > 64   64   32   64
>>     >> stopifnot(unname(ncc) == c(64,64, 32, 64))
>>     >> ## nchar.max: 1st line needs an increase of  2  in order to see
>> 1  (in
>>      > UTF-$
>>     >> invisible(lapply(60:66, function(N) str(fwch, nchar.max = N)))
>>      > chr "<U+FF21><U+FF22><U+FF23><U+FF24><U+FF25><U+"| __truncated__
>>      > chr "<U+FF21><U+FF22><U+FF23><U+FF24><U+FF25><U+F"| __truncated__
>>      > chr "<U+FF21><U+FF22><U+FF23><U+FF24><U+FF25><U+FF"| __truncated__
>>      > chr "<U+FF21><U+FF22><U+FF23><U+FF24><U+FF25><U+FF2"| __truncated__
>>      > chr "<U+FF21><U+FF22><U+FF23><U+FF24><U+FF25><U+FF26"|
>> __truncated__
>>      > chr "<U+FF21><U+FF22><U+FF23><U+FF24><U+FF25><U+FF26>"|
>> __truncated__
>>      > chr "<U+FF21><U+FF22><U+FF23><U+FF24><U+FF25><U+FF26><"|
>> __truncated__
>>     >> invisible(lapply(60:66, function(N) str( ch , nchar.max = N))) #
>> "1 is 1"
>>      > he$
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O"| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O."| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._"| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P"| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P."|
>> __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P._"|
>> __truncated__
>>      > chr
>> "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P._Q._R._S._T._U._V"
>>     >>
>>
>>      > Running the str example WITH changing the locale:
>>
>>      > oloc <- Sys.getlocale("LC_CTYPE")
>>     >> mbyte.lc <- if(.Platform$OS.type == "windows")
>>      > +  "English_United States.28605" else "en_GB.UTF-8"
>>     >> try(Sys.setlocale("LC_CTYPE", mbyte.lc))
>>      > [1] "English_United States.28605"
>>     >> ## Truncation behavior (<-> correct width measurement) for "long"
>>      > non-ASCII:
>>     >> idx <- c(65313:65338, 65345:65350)
>>     >> fwch <- intToUtf8(idx) # full width character string: each has
>> width 2
>>     >> ch <- strtrim(paste(LETTERS, collapse="._"), 64)
>>     >> (ncc <- c(c.ch = nchar(ch),   w.ch = nchar(ch,   "w"),
>>      > +           c.fw = nchar(fwch), w.fw = nchar(fwch, "w")))
>>      > c.ch w.ch c.fw w.fw
>>      > 64   64   32   64
>>     >> stopifnot(unname(ncc) == c(64,64, 32, 64))
>>     >> ## nchar.max: 1st line needs an increase of  2  in order to see
>> 1  (in
>>      > UTF-$
>>     >> invisible(lapply(60:66, function(N) str(fwch, nchar.max = N)))
>>      > Error in strtrim(x.lrg, nchar.max - nc) :
>>      > unsupported conversion from 'UTF-8' in codepage 28605
>>     >> invisible(lapply(60:66, function(N) str( ch , nchar.max = N))) #
>> "1 is 1"
>>      > he$
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O"| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O."| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._"| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P"| __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P."|
>> __truncated__
>>      > chr "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P._"|
>> __truncated__
>>      > chr
>> "A._B._C._D._E._F._G._H._I._J._K._L._M._N._O._P._Q._R._S._T._U._V"
>>
>>      > This is pretty strange.
>>
>> It is strange indeed  that  strtrim() fails in this situation.
>>
>> From what you wrote previously, this only happens when you link
>> with OpenBLAS but not when you use R's own BLAS.
>> Are you sure that that was the only difference, but not rather
>> the difference in the locales you used in your two versions of R
>> on Windows?
>>
>> Martin
>>
>>      > Thanks for any help.
>>
>>      > Sincerely,
>>      > Erin
>>
>>      > Erin Hodgess, PhD
>>      > mailto: erinm.hodgess using gmail.com
>>
>>
>>      > On Thu, Mar 19, 2020 at 2:29 AM Tomas Kalibera <
>> tomas.kalibera using gmail.com>
>>      > wrote:
>>
>>     >> Hi Erin,
>>     >>
>>     >> this comes from examples in ?str. Could you please try to find a
>> minimal
>>     >> example to reproduce on your system based on that? I would look for
>>     >> "line needs" in ?str and experiment with reducing the example there
>>     >> while still getting the error. Once it is minimal, could you
>> please try
>>     >> also on the official build of R on your machine?
>>     >>
>>     >> Also it would be nice to have a session info. If it works in the
>>     >> official build but not your custom build, then one would have to
>> look
>>     >> also into how the custom build is done.
>>     >>
>>     >> Thanks
>>     >> Tomas
>>     >>
>>     >>
>>     >> On 3/19/20 8:02 AM, Erin Hodgess wrote:
>>     >> > Hello everyone:
>>     >> >
>>     >> > I have built the latest version of the OpenBLAS on my Windows 10
>> machine.
>>     >> > When I run make distribution in R, everything is fine.
>>     >> >
>>     >> > However, when I run make check all,  I get the following error:
>>     >> >
>>     >> > C:\newtimeR\R-3.6.3\src\gnuwin32>make check-all
>>     >> > Testing examples for package 'base'
>>     >> > Testing examples for package 'tools'
>>     >> >    comparing 'tools-Ex.Rout' to 'tools-Ex.Rout.save' ... OK
>>     >> > Testing examples for package 'utils'
>>     >> > Error: testing 'utils' failed
>>     >> > Execution halted
>>     >> > make[3]: *** [Makefile.win:29: test-Examples-Base] Error 1
>>     >> > make[2]: *** [Makefile.common:185: test-Examples] Error 2
>>     >> > make[1]: *** [Makefile.common:171: test-all-basics] Error 1
>>     >> > make: *** [Makefile:324: check-all] Error 2
>>     >> >
>>     >> > And here is the section from the .Rout.fail for utils:
>>     >> >
>>     >> >> ## Multibyte characters in strings (in multibyte locales):
>>     >> >> oloc <- Sys.getlocale("LC_CTYPE")
>>     >> >> mbyte.lc <- if(.Platform$OS.type == "windows")
>>     >> > +  "English_United States.28605" else "en_GB.UTF-8"
>>     >> >> try(Sys.setlocale("LC_CTYPE", mbyte.lc))
>>     >> > [1] "English_United States.28605"
>>     >> >> ## Truncation behavior (<-> correct width measurement) for
>> "long"
>>     >> > non-ASCII:
>>     >> >> idx <- c(65313:65338, 65345:65350)
>>     >> >> fwch <- intToUtf8(idx) # full width character string: each has
>> width 2
>>     >> >> ch <- strtrim(paste(LETTERS, collapse="._"), 64)
>>     >> >> (ncc <- c(c.ch = nchar(ch),   w.ch = nchar(ch,   "w"),
>>     >> > +           c.fw = nchar(fwch), w.fw = nchar(fwch, "w")))
>>     >> > c.ch w.ch c.fw w.fw
>>     >> >    64   64   32   64
>>     >> >> stopifnot(unname(ncc) == c(64,64, 32, 64))
>>     >> >> ## nchar.max: 1st line needs an increase of  2  in order to
>> see  1  (in
>>     >> > UTF-8!):
>>     >> >> invisible(lapply(60:66, function(N) str(fwch, nchar.max = N)))
>>     >> > Error in strtrim(x.lrg, nchar.max - nc) :
>>     >> >    unsupported conversion from 'UTF-8' in codepage 28605
>>     >> > Calls: lapply ... FUN -> str -> str.default -> maybe_truncate ->
>> strtrim
>>     >> > Execution halted
>>     >> >
>>     >> > Has anyone run into this before, please?
>>     >> >
>>     >> > If I run this line-by-line starting at the "idx <-", things are
>> fine.
>>     >> >
>>     >> > I also compiled R from source without the OpenBLAS, and it was
>> fine.
>>     >> >
>>     >> > Thanks for any suggestions.
>>     >> >
>>     >> > Sincerely,
>>     >> > Erin
>>     >> >
>>     >> >
>>     >> >
>>     >> > Erin Hodgess, PhD
>>     >> > mailto: erinm.hodgess using gmail.com
>>
>> --
> Erin Hodgess, PhD
> mailto: erinm.hodgess using gmail.com
>
>
> --
Erin Hodgess, PhD
mailto: erinm.hodgess using gmail.com

	[[alternative HTML version deleted]]



More information about the R-package-devel mailing list