oneclick / rubyinstaller2

MSYS2 based RubyInstaller for Windows
https://rubyinstaller.org
BSD 3-Clause "New" or "Revised" License
654 stars 249 forks source link

unknown mingwarch "msys" #269

Closed enumag closed 2 years ago

enumag commented 2 years ago

What problems are you experiencing?

I'm not getting this issue myself but when I compiled a ruby script using ocra and sent the exe to a friend they got the error below while running it. However it only happened with some MSYS console window but runs completely fine when used from normal windows terminal. So it's no blocker.

Apparently it's failing here since this case have no "msys" branch.

USER@PC MSYS /c/Users/USER/Documents/project
$ ./program.exe
C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/3.1.0/rubygems.rb:1334:in `rescue in <top (required)>': unknown mingwarch "msys" (RuntimeError)
Loading the rubygems/defaults/operating_system.rb file caused an error. This file is owned by your OS, not by rubygems upstream. Please find out which OS package this file belongs to and follow the guidelines from your OS to report the problem and ask for help.
        from C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/3.1.0/rubygems.rb:1321:in `<top (required)>'
        from <internal:gem_prelude>:2:in `require'
        from <internal:gem_prelude>:2:in `<internal:gem_prelude>'
C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/site_ruby/3.1.0/ruby_installer/runtime/msys2_installation.rb:36:in `initialize': unknown mingwarch "msys" (RuntimeError)
        from C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/site_ruby/3.1.0/ruby_installer/runtime/singleton.rb:17:in `new'
        from C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/site_ruby/3.1.0/ruby_installer/runtime/singleton.rb:17:in `msys2_installation'
        from C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/site_ruby/3.1.0/ruby_installer/runtime/singleton.rb:27:in `enable_dll_search_paths'
        from C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/3.1.0/rubygems/defaults/operating_system.rb:3:in `<top (required)>'
        from C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/3.1.0/rubygems.rb:1325:in `require'
        from C:/msys64/tmp/ocr8ABE.tmp/lib/ruby/3.1.0/rubygems.rb:1325:in `<top (required)>'
        from <internal:gem_prelude>:2:in `require'
        from <internal:gem_prelude>:2:in `<internal:gem_prelude>'

Steps to reproduce

I'm not sure where exactly they got that MSYS console and they don't quite remember either so sadly I'm not sure about steps to reproduce. Feel free to close the issue because of this.

My own PC has similar-ish console window installed by Git for Windows however it says Enumag@PC MINGW64 ~ - MINGW64 instead of MSYS and the program works fine there.

What's the output from ridk version?

I think ridk isn't even installed on the PC where this happened. As I said it was a compiled exe file. As for what ruby installer I used on the PC where I compiled it:

---
ruby:
  path: C:/Ruby31-x64
  version: 3.1.1
  platform: x64-mingw-ucrt
  cc: gcc.exe (Rev9, Built by MSYS2 project) 11.2.0
ruby_installer:
  package_version: 3.1.1-1
  git_commit: d9d39f1
msys2:
  path: C:\Ruby31-x64\msys64
sh: GNU bash, version 5.1.16(1)-release (x86_64-pc-msys)
os: Microsoft Windows [Version 10.0.19043.1586]