Re: [R] Problem calling R from within perl script on Windows

From: Gabor Grothendieck <>
Date: Fri, 18 Jun 2010 17:03:17 -0400

On Fri, Jun 18, 2010 at 3:11 PM, Barry Hall <> wrote:
> I need to call R from within a Perl script.  I do so using a system call like
> this:
> @args = ('R --vanilla --quiet --file=Rblock');
> system(@args) == 0 or die "system @args failed: $!";
> The script works perfectly when run in Mac OSX or Linux.  In Windows XP it
> fails with the message " 'R' is not recognized as an internal or external
> command, operable program or batch file".
> To ensure that R was properly installed and that the environment variable
> "path" was correctly set, I executed the same command (R --vanilla --quiet
> --file=Rblock) from the command line and it worked perfectly; i.e. R ran
> with the expected behavior.
> Similar system calls to other external programs, e.g.
> @args = ('Notepad');
> system(@args) == 0 or die "system @args failed: $!";
> work perfectly.
> Is there any obvious reason that this particular call works from the command
> line but not from within a perl script?

That error is coming from the Windows console so you likely have a PATH problem. Fix your path or use the absolute path in your program.

Note that unless you told it not to under normal circumstances the R installer puts a key in the registry and you can alternatively look it up to find R that way. A batch file that does that is in the batchfiles collection at mailing list PLEASE do read the posting guide and provide commented, minimal, self-contained, reproducible code. Received on Fri 18 Jun 2010 - 21:07:54 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Fri 18 Jun 2010 - 21:20:41 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.

list of date sections of archive