[R-SIG-Win] Rtools44

Avraham Adler @vr@h@m@@d|er @end|ng |rom gm@||@com
Tue Mar 19 04:58:59 CET 2024


I ran "tools::testInstalledBasic("both")" from within Rterm, and it
failed on reg-tests-1a, and doesn't that last call in the FAIL look
familiar? Three times isn;t coincidence. What could be causing
agrep/adist to fail?

Avi

> a <- c("NA", NA, "BANANA")
> na <- NA_character_
> a1 <- substr(a,1,1)
> stopifnot(is.na(a1)==is.na(a))
> a2 <- substring(a,1,1)
> stopifnot(is.na(a2)==is.na(a))
> a3 <- sub("NA","na",a)
> stopifnot(is.na(a3)==is.na(a))
> a3 <- gsub("NA","na",a)
> stopifnot(is.na(a3)==is.na(a))
> substr(a3, 1, 2) <- "na"
> stopifnot(is.na(a3)==is.na(a))
> substr(a3, 1, 2) <- na
> stopifnot(all(is.na(a3)))
> stopifnot(agrep("NA", a) == c(1, 3))

On Mon, Mar 18, 2024 at 11:52 PM Avraham Adler <avraham.adler using gmail.com> wrote:
>
> Hello, Tomas.
>
> I ran check again and this time it failed on base. Base failed at
> "agrep" and utils failed at "adist" if that triggers any ideas.
>
> Thank you,
>
> Avi
>
> On Mon, Mar 18, 2024 at 11:49 PM Avraham Adler <avraham.adler using gmail.com> wrote:
> >
> > Hello, Tomas.
> >
> > I had hoped that my problem was that I was linking to OpenBLAS built
> > under Rtools43, but sadly that is not the case, as I built OpenBLAS
> > using Rtools44 and I still get the error in 'utils'. I do have
> > Rtools43 installed on this machine, but I am doing eveything from the
> > Rtools44 bash. My MkRules.local follows:
> >
> > USE_ATLAS = YES
> > ATLAS_PATH = C:/R/OPB/OPB_03.26_1T_44
> > EOPTS = -march=native -pipe -mno-rtm
> > LTO = -flto=1 -fuse-linker-plugin
> > LTO_OPT = -flto=1 -fuse-linker-plugin
> > LTO_FC = -flto=1 -fuse-linker-plugin
> > LTO_FC_OPT = -flto=1 -fuse-linker-plugin
> > QPDF = C:/R/qpdf-11.9.0-msvc64
> > OPENMP = -fopenmp
> >
> > I also make the following change to Makefile.win in /src/extra/blas as
> > I have been doing for more than a decade:
> >
> > --- /c/r/trunk/src/extra/blas/Makefile.win    2024-01-24
> > 18:34:42.755255900 +0000
> > +++ /c/r/Makefile.win    2024-01-24 18:39:39.716458000 +0000
> > @@ -12,7 +12,7 @@
> >  ../../../$(BINDIR)/Rblas.dll: blas00.o ../../gnuwin32/dllversion.o
> >      @$(ECHO) -------- Building $@ --------
> >      $(DLL) -s -shared $(DLLFLAGS) -o $@ $^ Rblas.def \
> > -       -L../../../$(IMPDIR) -lR  -L"$(ATLAS_PATH)" -lf77blas -latlas
> > +       -L../../../$(IMPDIR) -lR -L"$(ATLAS_PATH)" -fopenmp -lopenblas
> >  else
> >  ../../../$(BINDIR)/Rblas.dll: blas.o blas2.o cmplxblas.o cmplxblas2.o
> > ../../gnuwin32/dllversion.o
> >      @$(ECHO) -------- Building $@ --------
> >
> > The utils-Ex.Rout.fail is 1188 lines long and I don't see any obvious
> > point of failure. The last few lines are:
> > > cleanEx()
> > > nameEx("adist")
> > > ### * adist
> > >
> > > flush(stderr()); flush(stdout())
> > >
> > > ### Name: adist
> > > ### Title: Approximate String Distances
> > > ### Aliases: adist
> > > ### Keywords: character
> > >
> > > ### ** Examples
> > >
> > > ## Cf. https://en.wikipedia.org/wiki/Levenshtein_distance
> > > adist("kitten", "sitting")
> >      [,1]
> > [1,]    3
> > > ## To see the transformation counts for the Levenshtein distance:
> > > drop(attr(adist("kitten", "sitting", counts = TRUE), "counts"))
> > ins del sub
> >   1   0   2
> > > ## To see the transformation sequences:
> > > attr(adist(c("kitten", "sitting"), counts = TRUE), "trafos")
> >      [,1]      [,2]
> > [1,] "MMMMMM"  "SMMMSMI"
> > [2,] "SMMMSMD" "MMMMMMM"
> > >
> > > ## Cf. the examples for agrep:
> > > adist("lasy", "1 lazy 2")
> >      [,1]
> > [1,]    5
> > > ## For a "partial approximate match" (as used for agrep):
> > > adist("lasy", "1 lazy 2", partial = TRUE)
> >
> > The build works under Rtools43. Should I uninstall both versions of
> > Rtools, my current R installation, and its library and try again? I'm
> > doubtful that will help as my "active" R installation is in a
> > completely different directory, but I am willing to try. If there is
> > any output or other tests I can do, please let me know. Or, if you
> > think I should raise this on r-devel.
> >
> > Thank you,
> >
> > Avi
> >
> > On Mon, Mar 18, 2024 at 4:08 AM Tomas Kalibera <tomas.kalibera using gmail.com> wrote:
> > >
> > > Hello Avi,
> > >
> > > On 3/17/24 17:53, Avraham Adler wrote:
> > > > Hello, Tomas.
> > > >
> > > > As always, thank you for your incessant hard work. I have compiled
> > > > R-devel 86144 using Rtools44 and it completes normally. However, it
> > > > fails very early in make check-devel. Specifically, I get the output
> > > > below, and have received it more than once. Is this something to raise
> > > > on R-devel or is it an Rtools44-specific issue?
> > > I can't tell from this output. Could you please try to get a more
> > > specific error output?
> > > Could you please share your compiler options (e.g. MkRules.local) and
> > > indeed if you made any modifications to the code?
> > >
> > > Also, as always, it is worth making sure that all code has been rebuilt
> > > using the new Rtools - e.g. delete any old package library for R-devel
> > > (4.4) you may have on your system.
> > >
> > > The testing done by myself and CRAN only covers the default compilation
> > > options as specified in the make files.
> > >
> > > Best
> > > Tomas
> > >
> > > >
> > > > Thank you,
> > > >
> > > > Avi
> > > >
> > > > $ make check-devel
> > > > Testing examples for package 'base'
> > > > Testing examples for package 'tools'
> > > >    comparing 'tools-Ex.Rout' to 'tools-Ex.Rout.save' ... NOTE
> > > >    1046,1047d1045
> > > >    < Warning in file(con, "r") :
> > > >    <   file("") only supports open = "w+" and open = "w+b": using the former
> > > >    1050,1051c1048,1049
> > > >    <  $ file    : chr ""
> > > >    <  $ title   : chr ""
> > > >    ---
> > > >    >  $ file    : chr "grid.Rnw"
> > > >    >  $ title   : chr "Introduction to grid"
> > > > 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:208: test-Examples] Error 2
> > > > make[1]: *** [Makefile.common:193: test-all-basics] Error 1
> > > > make: *** [Makefile:333: check-devel] Error 2
> > > >
> > > >
> > > >
> > > > On Thu, Mar 14, 2024 at 4:45 AM Tomas Kalibera <tomas.kalibera using gmail.com> wrote:
> > > >> Dear R Windows developers,
> > > >>
> > > >> there is now a new toolchain for R for Windows, Rtools44. It is now used
> > > >> by R-devel and is intended for R 4.4.0.
> > > >>
> > > >> Compared to Rtools43, it uses GCC 13 and updates other core components.
> > > >> See https://cran.r-project.org/bin/windows/Rtools/rtools44/news.html for
> > > >> a detailed list of changes.
> > > >>
> > > >> All users of R-devel who need to compile R packages with source code in
> > > >> C, C++ or Fortran should install Rtools44. From the user perspective,
> > > >> Rtools44 works the same way as Rtools43. See
> > > >> https://cran.r-project.org/bin/windows/base/howto-R-devel.html for
> > > >> instructions on how to build R-devel and packages for this version of R.
> > > >>
> > > >> It is recommended to re-install packages that need compilation to avoid
> > > >> potential incompatibilities with code built using Rtools43.
> > > >>
> > > >> Rtools44 also includes an experimental version for 64-bit ARM machines,
> > > >> using LLVM 17 (and clang, flang-new, lld, libc++) - the aarch64 version
> > > >> of Rtools has its own installer and distribution tarballs.
> > > >>
> > > >> Best
> > > >> Tomas
> > > >>
> > > >> _______________________________________________
> > > >> R-SIG-windows mailing list
> > > >> R-SIG-windows using r-project.org
> > > >> https://stat.ethz.ch/mailman/listinfo/r-sig-windows



More information about the R-SIG-windows mailing list