Bug #19127
closedBuild of 3.2.0-preview3 fails unless Ruby is already installed
Description
Steps to reproduce process¶
- Make clean install of operating system.
- Install tools and libraries necessary to build Ruby with release
 archive files (C Compiler, make, libyaml, etc). Keep in mind any
 version of Ruby isn't installed.
- Download ruby-3.2.0-preview3.tar.xz.
- tar xfpvJ ruby-3.2.0-preview3.tar.xz
- cd ruby-3.2.0-preview3
- ./configure
- make
Exptected result¶
Step 7 finishes successfully.
What really happens¶
It fails as following.
compiling ruby.c
compiling scheduler.c
compiling shape.c
compiling signal.c
compiling sprintf.c
compiling st.c
compiling strftime.c
compiling string.c
compiling struct.c
compiling symbol.c
compiling thread.c
compiling time.c
compiling transcode.c
compiling transient_heap.c
compiling util.c
compiling variable.c
executable host ruby is required. use --with-baseruby option.
make: *** [uncommon.mk:1232: .revision.time] Error 1
Conditions¶
Confirmed with following environments.
- Debian 11.5 amd64
- FreeBSD 13.1-RELEASE amd64
        
           Updated by jeremyevans0 (Jeremy Evans) almost 3 years ago
          Updated by jeremyevans0 (Jeremy Evans) almost 3 years ago
          
          
        
        
      
      This also happens on OpenBSD. I tested with a current OpenBSD snapshot and reproduced, but I assume it also happens on supported OpenBSD releases (7.1 and 7.2).
With OpenBSD make, the error is:
*** Error 1 in /usr/obj/ports/ruby-3.2.0-preview3/ruby-3.2.0-preview3 (Makefile:1958 './.revision.time')
        
           Updated by nobu (Nobuyoshi Nakada) almost 3 years ago
          Updated by nobu (Nobuyoshi Nakada) almost 3 years ago
          
          
        
        
      
      
    
        
           Updated by hsbt (Hiroshi SHIBATA) almost 3 years ago
          Updated by hsbt (Hiroshi SHIBATA) almost 3 years ago
          
          
        
        
      
      - Target version set to 3.2
        
           Updated by k0kubun (Takashi Kokubun) almost 3 years ago
          Updated by k0kubun (Takashi Kokubun) almost 3 years ago
          
          
        
        
      
      On the nightly snapshot builds, it wasn't reproducible as of https://github.com/ruby/actions/actions/runs/3371938561/jobs/5594778747, and it has been reproduced since https://github.com/ruby/actions/actions/runs/3380198941/jobs/5612712842. So it seems like something in https://github.com/ruby/ruby/compare/cbf15e5cbe30cbca45810ef65224ad1bc19c67b4...b777408c33b57077f8be09eaed9245eeca0b59c5 caused that problem.
        
           Updated by nobu (Nobuyoshi Nakada) almost 3 years ago
          Updated by nobu (Nobuyoshi Nakada) almost 3 years ago
          
          
        
        
      
      - Status changed from Open to Closed
Applied in changeset git|3fae53a343ebd7686bb20d8f4b6855f4d11019cd.
[Bug #19127] Fix revision.h dependency when no baseruby
Disconnect the dependency of revision.h on the timestamp file if no
baseruby is available