[R-pkg-devel] Making adjustments to the R CMD check/install commands

Erin Hodgess erinm@hodge@@ @ending from gm@il@com
Mon Aug 27 23:32:53 CEST 2018

Thank you, Kevin!

I put together the Makevars file:

rmpiFort.obj: rmpiFort.f90
        $(FC) $(SAFE_FFLAGS) -Mmpi=msmpi -c rmpiFort.f90 -o rmpiFort.obj
rmpiFort.dll: rmpiFort.obj
        $(FC) $(SAFE_FFLAGS) rmpiFort.obj -Mmpi=msmpi -Mmakedll -o

But when I run R CMD check, the 00install file shows that the gfortran
compile is used, rather than the PGI compiler:
* installing *source* package 'rmpiFort' ...^M
** libs^M
*** arch - i386^M
C:/progra~1/R/R-35~1.1/share/make/winshlib.mk:13: warning: overriding
commands for target `rmpiFort.dll'
Makevars:10: warning: ignoring old commands for target `rmpiFort.dll'
c:/Rtools/mingw_32/bin/gfortran  -O2 -msse2 -mfpmath=sse -Mmpi=msmpi -c
rmpiFort.f90 -o rmpiFort.obj
gfortran.exe: error: unrecognized command line option '-Mmpi=msmpi'^M
make: *** [rmpiFort.obj] Error 1
ERROR: compilation failed for package 'rmpiFort'^M
* removing 'C:/Users/erinm/rmpiFort.Rcheck/rmpiFort'^M

So I'm still puzzled.

Any help much appreciated.


Erin Hodgess, PhD
mailto: erinm.hodgess using gmail.com

On Mon, Aug 27, 2018 at 2:29 PM Kevin Ushey <kevinushey using gmail.com> wrote:

> Hi Erin,
> The R extensions manual should be helpful here -- in particular, see the
> sections on the 'src/Makevars' file and configuration of the Fortran
> compiler:
> https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Using-Makevars
> In particular, in your 'src/Makevars' file, you'll likely want to set the
> FC variable to choose the Fortran compiler, and FCFLAGS to choose the
> appropriate compilation flags. As an example, you can see how one might set
> these flags to compile code with the address sanitizer active:
> https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Using-Address-Sanitizer
> (Note that this example uses the user-level '~/.R/Makevars' file rather
> than the package-level 'src/Makevars' file, but the crux is the same)
> Hope this gets you on the right track,
> Kevin
> On Mon, Aug 27, 2018 at 1:15 PM Erin Hodgess <erinm.hodgess using gmail.com>
> wrote:
>> Hello!
>> I'm building a package on Windows 10  which uses the PGI Fortran compiler.
>> I have a Makefile set up in the src directory, and when I run "make all",
>> the subroutines compile beautifully.
>> Now I want to create my package.  When I run R CMD check, naturally,
>> gfortran is called.  Is there a way that I can direct the check function
>> to
>> just use the make/Makefile, please?
>> Or am I out of luck, please?  (highly probable)
>> Thanks,
>> Erin
>> Erin Hodgess, PhD
>> mailto: erinm.hodgess using gmail.com
>>         [[alternative HTML version deleted]]
>> ______________________________________________
>> R-package-devel using r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-package-devel

	[[alternative HTML version deleted]]

More information about the R-package-devel mailing list