Thanks for your email. I try to change the name in lowercase but it conflicts with a C implementation also named halton. So I rename the C function halton2() and sobol2() while the Fortran function are HALTON() and SOBOL() (I also try lower case in the Fortran code). Unfortunately, it does not help since I get
init.c:97:25: error: use of undeclared identifier 'halton_'; did you mean 'halton2'? {"halton", (DL_FUNC) &F77_SUB(halton), 7}, My current solution is to comment FortEntries array and use R_useDynamicSymbols(dll, TRUE) for a dynamic search of Fortran routines. Regards, Christophe --------------------------------------- Christophe Dutang LMM, UdM, Le Mans, France web: http://dutangc.free.fr <http://dutangc.free.fr/> > Le 9 mai 2017 à 14:32, Berend Hasselman <b...@xs4all.nl> a écrit : > > >> On 9 May 2017, at 13:44, Christophe Dutang <duta...@gmail.com> wrote: >> >> Dear list, >> >> I’m trying to register Fortran routines in randtoolbox (in srt/init.c file), >> see >> https://r-forge.r-project.org/scm/viewvc.php/pkg/randtoolbox/src/init.c?view=markup&root=rmetrics. >> >> >> Reading >> https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Registering-native-routines >> and looking at what is done in stats package, I first thought that the >> following code will do the job: >> >> static const R_FortranMethodDef FortEntries[] = { >> {"halton", (DL_FUNC) &F77_NAME(HALTON), 7}, >> {"sobol", (DL_FUNC) &F77_NAME(SOBOL), 11}, >> {NULL, NULL, 0} >> }; >> >> But I got error messages when building : use of undeclared identifier >> ‘SOBOL_’. I also tried in lower case sobol and halton. >> >> Looking at expm package >> https://r-forge.r-project.org/scm/viewvc.php/pkg/src/init.c?view=markup&revision=94&root=expm, >> I try >> >> static const R_FortranMethodDef FortEntries[] = { >> {"halton", (DL_FUNC) &F77_SUB(HALTON), 7}, >> {"sobol", (DL_FUNC) &F77_SUB(SOBOL), 11}, >> {NULL, NULL, 0} >> }; >> >> But the problem remains the same. >> >> Is there a way to have header file for Fortran codes? how to declare >> routines defined in my Fortran file src/LowDiscrepancy.f? >> > > lowercase routine names? manual does mention that. > > Berend Hasselman > > >> Any help appreciated >> >> Regards, Christophe >> --------------------------------------- >> Christophe Dutang >> LMM, UdM, Le Mans, France >> web: http://dutangc.free.fr >> >> ______________________________________________ >> R-devel@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-devel > [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel