[Rd] Problem with R_registerRoutines

Martin Maechler maechler at stat.math.ethz.ch
Fri Feb 23 18:56:41 CET 2018


>>>>>   <Jon.SKOIEN at ec.europa.eu>
>>>>>     on Fri, 23 Feb 2018 15:43:43 +0000 writes:

    > Thanks a lot for your answer Jeroen!
    > I should have mentioned that I had actually only checked with the win-builder, as I did not have R-devel installed on my computer.
    > But based on your answer I installed R-devel locally on a Linux-server (Redhat), and the package could be checked without the NOTE. So you might be right that this is a windows issue. However, another package that I am maintaining does not get any notes from the check on the win-builder (including fortran-code), so there is still something I don't understand here.

    > Anyway, does this mean that the package might be accepted on CRAN without further changes?

at least not automatically, and not very probably in my gut
feeling... but I may be wrong.

Did you use  R CMD check --as-cran  <your_pkg>
on Linux ?

Martin

    > Thanks,
    > Jon


    > ________________________________________
    > From: Jeroen Ooms [jeroenooms at gmail.com]
    > Sent: 23 February 2018 13:36
    > To: SKOIEN Jon (JRC-ISPRA)
    > Cc: r-devel
    > Subject: Re: [Rd] Problem with R_registerRoutines

    > On Windows this warning may be a false positive if R cannot find
    > "objdump.exe" which is required for this check. I think this is
    > actually a bug in R because it should be looking for "objdump.exe"
    > inside BINPREF (where gcc is) rather than on the PATH.

    > Can you check if you get the same warning if you upload the package to
    > https://win-builder.r-project.org ?






    > On Fri, Feb 23, 2018 at 10:28 AM,  <Jon.SKOIEN at ec.europa.eu> wrote:
    >> Dear list,
    >> 
    >> I am trying to update a package to pass the CRAN-checks.
    >> But I am struggling with the following note:
    >> 
    >> File 'psgp/libs/i386/psgp.dll':
    >> Found no calls to: 'R_registerRoutines', 'R_useDynamicSymbols'
    >> File 'psgp/libs/x64/psgp.dll':
    >> Found no calls to: 'R_registerRoutines', 'R_useDynamicSymbols'
    >> 
    >> It is good practice to register native routines and to disable symbol
    >> search.
    >> 
    >> 
    >> I did already run:
    >> tools::package_native_routine_registration_skeleton(".")
    >> This gave me some code, including a function R_init_psgp, which includes calls to the functions above, and also the names of the C++ functions to be called from R.
    >> I first saved this code in registerDynamicSymbol.c and added .registration = TRUE to useDynLib in the NAMESPACE file.
    >> I still get the error above. As I saw that the file has different names in other packages, I have also tried to save it psgp_init.c, and in init.cpp, still with the same error message.
    >> 
    >> I have read the relevant part of the R extensions manual, but could not find anything that could help me with this problem.
    >> I have had a look at the similar files in other packages (including one of my own, which works), and the initialization seems fine to me.
    >> There is surely something I have overlooked, is anyone able to give me a hint to where I might look? The code is in C++, not sure if that could have anything to do with the problem?
    >> 
    >> Thanks,
    >> Jon
    >> 
    >> 
    >> 
    >> 
    >> 
    >> 
    >> 
    >> 
    >> 
    >> 
    >> 
    >> ______________________________________________
    >> R-devel at r-project.org mailing list
    >> https://stat.ethz.ch/mailman/listinfo/r-devel

    > ______________________________________________
    > R-devel at r-project.org mailing list
    > https://stat.ethz.ch/mailman/listinfo/r-devel



More information about the R-devel mailing list