Project

General

Profile

Actions

Bug #16845

closed

Building Ruby with system Ruby 1.8.7 results in make failing due to syntax error in ./tool/lib/vcs.rb

Added by ErikSwan (Erik Swan) over 4 years ago. Updated over 4 years ago.

Status:
Closed
Assignee:
-
Target version:
-
[ruby-core:98241]

Description

Hello,

I am trying to build Ruby 2.7.1 from source on a RHEL 6.9 system, which has ruby 1.8.7 as the existing system Ruby. When I run make, I get an error about a syntax error in ./tool/lib/vcs.rb, which is called by ./tool/file2lastrev.rb. I am guessing this is because vcs.rb uses Ruby syntax that was introduced in a newer Ruby version, and is not valid in 1.8.7, resulting in a runtime error.

Here is a snippet of the error:

./tool/file2lastrev.rb:10:in `require': /tmp/eswan/ruby-2.7.1/tool/lib/vcs.rb:471: syntax error, unexpected ',', expecting ']' (SyntaxError)
      last = cmd_read_at(srcdir, [[*gitcmd, 'rev-parse', ref]]).rstrip
                                           ^
/tmp/eswan/ruby-2.7.1/tool/lib/vcs.rb:471: syntax error, unexpected ',', expecting kEND

Steps to reproduce:

  1. Obtain a RHEL 6.8 or 6.9 system (this is also reproducible on 6.8, and might be reproducible on all 6.x)
  2. Confirm /usr/bin/ruby --version reports Ruby 1.8.7.
  3. Download and extract the Ruby 2.7.1 source archive.
  4. Run ./configure
  5. Run ./make

Expected behavior:

make should run correctly without any errors.

Actual behavior:

The Makefile errors out when trying to run ./tool/file2lastrev.rb with the existing system Ruby.

A shell log showing steps to reproduce and the output of configure and make is attached.


Files

ruby_build_error.log (573 KB) ruby_build_error.log ErikSwan (Erik Swan), 05/09/2020 10:55 PM
ruby_build_error_with_-p.log (572 KB) ruby_build_error_with_-p.log ErikSwan (Erik Swan), 05/10/2020 03:57 PM

Related issues 1 (0 open1 closed)

Related to Ruby master - Misc #16671: BASERUBY version policyClosedhsbt (Hiroshi SHIBATA)Actions
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0