[R-pkg-devel] [BULK] Re: [Rd] "not a valid win32 application" with rtools40-x86_65.exe on Windows 10

Spencer Graves @pencer@gr@ve@ @end|ng |rom e||ect|vede|en@e@org
Tue May 12 08:55:14 CEST 2020


Hi, Simon et al.


[changing to "R-package-devel, because I've heard complaints that this 
may not be appropriate for R-devel.]


       I'm still having problems.  I found that I had Java twice in the 
path and deleted both versions (~\AdoptOpenJDK\jdk-11.0.6.10-hotspot\bin 
and ~Java\jre1.8.0_241). That seemed not to change anything as far as I 
can tell.


       I have both directories for both "~Rtools" and "~rtools40", and 
the path includes "~rtools40\bin".  When running R4.0.0 within RStudio, 
"install.package('rJava', type='source', INSTALL_opts = 
'--merge-multiarch') complained, "WARNING:  Rtools is required ... but 
no version compatible ... was found.  Note that the following 
incompatible versions(s) ... were found:  - Rtools 3.5".  When I run r 
in a CMD prompt, I don't get that warning.  However, both complain,


       warning in system("sh ./configure.win") : 'sh' not found


       When I tried "install.packages('rJava')", it seemed to work OK 
(though I still got the complaint from R within RStudio that it could 
not find rtools40).


       And my primary problem is unchanged:  "R CMD check 
Ecfun_0.2-4.tar.gz" ends with the following:


Error:  package or namespace load failed for 'Ecfun':
   .onLoad failed in loadNamespace() for 'rJava', details
    call: inDL(x, as.logical(local), as.logical(now), ...)
    error:  unable to load shared object 'c:/Program
Files/R/R-4.0.0/library/rJava/libs/i386/rJava.dll':
    LoadLibrary failure: ^1 is not a valid win32 application


       The same package on my Mac quits with a LaTeX error I have yet to 
figure out how to fix.


       Suggestions?
       Thanks,
       Spencer Graves


00install.out:


* installing *source* package 'Ecfun' ...
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
*** arch - i386
Error: package or namespace load failed for 'Ecfun':
  .onLoad failed in loadNamespace() for 'rJava', details:
   call: inDL(x, as.logical(local), as.logical(now), ...)
   error: unable to load shared object 'C:/Program 
Files/R/R-4.0.0/library/rJava/libs/i386/rJava.dll':
   LoadLibrary failure:  %1 is not a valid Win32 application.

Error: loading failed
Execution halted
*** arch - x64
ERROR: loading failed for 'i386'
* removing 'C:/Users/spenc/Documents/R/Ecfun/Ecfun.Rcheck/Ecfun'


On 2020-05-02 02:20, Simon Urbanek wrote:
> Spencer,
>
> you shouldn't have anything on the PATH, the location of Java is taken from the registry so you only need t have a valid installation of Java. Better don't set PATH or JAVA_HOME as it will stop rJava from working if you get it wrong. The errors on Windows are confusing, the actual error is shown via GUI as pop-up, what they report in the console is not the real error.
>
> Re installation from source - it sooks like you either don't have Rtools40 or you didn't set PATH properly. If I recall the new Rtools40 no longer set the PATH (for whatever reason) so you have to do it by hand and the instructions it gives you are not working for the command shell.
>
> Cheers,
> Simon
>
>
>
>> On 1/05/2020, at 4:51 PM, Spencer Graves <spencer.graves using prodsyse.com> wrote:
>>
>> Hi, Jeroen et al.:
>>
>>
>> On 2020-04-30 03:15, Jeroen Ooms wrote:
>>> On Thu, Apr 30, 2020 at 6:38 AM Spencer Graves
>>> <spencer.graves using prodsyse.com> wrote:
>>>> Hello, All:
>>>>
>>>>
>>>>         "00install.out" from "R CMD check Ecfun_0.2-4.tar.gz" includes:
>>>>
>>>>
>>>> Error:  package or namespace load failed for 'Ecfun':
>>>>    .onLoad failed in loadNamespace() for 'rJava', details
>>>>     call: inDL(x, as.logical(local), as.logical(now), ...)
>>>>     error:  unable to load shared object 'c:/Program
>>>> Files/R/R-4.0.0/library/rJava/libs/i386/rJava.dll':
>>>>     LoadLibrary failure: ^1 is not a valid win32 application
>>>>
>>> This is an error in loading the rJava package, so it is not related to
>>> rtools40, and probably inappropriate for this mailing list.
>>>
>>> As Simon suggested, you may have to install the 32-bit Java JDK. See
>>> also this faq: https://github.com/r-windows/docs/blob/master/faq.md#how-to-install-rjava-on-windows
>>
>>        In fact I had both 32- and 64-bit Java installed but only the 64-bit was in the path.  I added the 32-bit, but that did not fix the problem.  The last 2.5 lines in the section "How to install rJava on Windows?" to which you referred me reads:
>>
>>
>> to build rJava from source, you need the --merge-multiarch flag:
>>
>> install.packages('rJava', type = 'source', INSTALL_opts='--merge-multiarch')
>>
>>
>>        When I tried that, I got:
>>
>>
>> Warning in system("sh ./configure.win") : 'sh' not found
>>
>>
>> *** ON THE OTHER HAND:  The error message above says 'c:/Program
>> Files/R/R-4.0.0/library/rJava/libs/i386/rJava.dll':
>>     LoadLibrary failure: ^1 is not a valid win32 application
>>
>>
>>>>>> Is "rJava.dll" a valid win32 application?
>>
>>        Suggestions?
>>        Thanks,
>>        Spencer Graves
>>
>>
>> p.s.  A similar problem with rJava a month ago was fixed by installed 64-bit Java.  Now with the upgrade to R 4.0.0 and rtools40, this no longer works.
>>
>> ______________________________________________
>> R-devel using r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>



More information about the R-package-devel mailing list