Project

General

Profile

Actions

Bug #19268

closed

Mingw64 Build Failure

Added by cfis (Charlie Savage) almost 2 years ago. Updated 17 days ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [x64-mingw-ucrt]
[ruby-core:111450]

Description

For both Ruby 3.1.3 and Ruby 3.2.0, building on msys2/ucrt64 fails:

linking miniruby.exe
/usr/bin/sh: -c: line 1: syntax error near unexpected token `('
/usr/bin/sh: -c: line 1: `/usr/local/ruby/bin/ruby --disable=gems -n -e BEGIN{version=ARGV.shift;mis=ARGV.dup} -e END{abort "UNICODE version mismatch: #{mis}" unless mis.empty?} -e (mis.delete(ARGF.path); ARGF.close) if /ONIG_UNICODE_VERSION_STRING +"#{Regexp.quote(version)}"/o 15.0.0 ./enc/unicode/15.0.0/casefold.h ./enc/unicode/15.0.0/name2ctype.h'
make: *** [uncommon.mk:878: .rbconfig.time] Error 2

The fix that works for me is changing:

	-e '(mis.delete(ARGF.path); ARGF.close) if /ONIG_UNICODE_VERSION_STRING +"#{Regexp.quote(version)}"/o' \

To

	-e "(mis.delete(ARGF.path); ARGF.close) if /ONIG_UNICODE_VERSION_STRING +\"#{Regexp.quote(version)}\"/o" \

Updated by cfis (Charlie Savage) about 1 year ago

This is still happening in Ruby 3.2.2.

I suspect I see this because I use mingw64 make versus msys make.

Updated by cfis (Charlie Savage) 19 days ago

Still a issue in Ruby 3.3.x

One thing I forgot to mention in the original report, the file with the issue is:

ruby-3.3.5/common.mk

Updated by cfis (Charlie Savage) 19 days ago ยท Edited

Actually this now works without change on latest version of mingw64 make. This issue can be closed.

Actions #4

Updated by jeremyevans0 (Jeremy Evans) 17 days ago

  • Status changed from Open to Closed
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0