Project

General

Profile

Actions

Bug #19268

open

Mingw64 Build Failure

Added by cfis (Charlie Savage) about 1 year ago. Updated 6 months ago.

Status:
Open
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) 6 months ago

This is still happening in Ruby 3.2.2.

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

Actions

Also available in: Atom PDF

Like0
Like0