[Bioc-devel] Warning "Register native routines" during BiocCheck

Gabe Becker becker.gabe at gene.com
Sun Sep 21 17:31:51 CEST 2014


Does the DLL that gets created have a symbol called coxmat? On unixalikes nm [file] will show the symbols in the library.

If coxmat (by itself) is not a symbol you may be running afoul of CPP name mangling.  Try using extern 'C' { } around the function declaration if that is the case.

~G

On Sep 21, 2014 7:12 AM, 张雨晴 <zhangyuqing.pkusms at gmail.com> wrote:
>
> Hello,
>
> I am trying to develop a new package named simulatorZ and submit it to the
> Bioconductor project. It contains a cpp file(coxformatrices.cpp) under
> /src. But
> there is a problem in registering native routines, which results in a
> warning during BiocCheck. The cpp file already contains the registration
> information below:
>
> R_CMethodDef cMethods[] = {
>         {"coxmat", (DL_FUNC) &coxmat, 26},
>         NULL
> };
> void R_init_coxformatrices(DllInfo *info)
> {
>         R_registerRoutines(info, cMethods, NULL, NULL, NULL);
> }
>
> coxmat is the name of the function. Also, the NAMESPACE uses useDynLib:
>
> useDynLib(simulatorZ, .registration=TRUE)
>
> But the warning still exists. The structure of the whole package is
> available at https://github.com/zhangyuqing/simulatorZ.
>
> Does anyone know how to fix it? I'd really appreciate your help!
>
> Yuqing
>
> -- 
> 张雨晴
> ZHANG Yuqing
> School of Mathematical Sciences, Peking University
> Beijing P.R.China 100871
> Tel:010-62750534
> Cell:13439586850
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel


More information about the Bioc-devel mailing list