Project

General

Profile

Actions

Bug #12587

closed

ruby released tarball require ruby

Added by arton (Akio Tajima) almost 8 years ago. Updated over 7 years ago.

Status:
Rejected
Target version:
-
ruby -v:
should be 2.3.1
[ruby-core:76374]

Description

I downloaded ruby-2.3.1.tar.bz2 into my brand new bash on windows.
I prepared gcc, autoconf etc but ruby itself because I know that ruby release tarball does not require ruby.
However, after hitting 'make', it stops while generating known_errors.inc because of 'executable host ruby is required. use --with-baseruby option.'.

arton@WIN10PRODEV:/mnt/c/Users/Akio/linux/231build$ make
        CC = gcc
        LD = ld
        LDSHARED = gcc -shared
        CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-par
entheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-ari
th -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdepr
ecated-declarations -Wno-packed-bitfield-compat -std=iso9899:1999
        XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -fvisibili
ty=hidden -DRUBY_EXPORT -fPIE
        CPPFLAGS =   -I. -I.ext/include/x86_64-linux -I../ruby-2.3.1/include -I../ruby-
2.3.1
        DLDFLAGS = -fstack-protector -pie
        SOLIBS =
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.8/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.4-2ubuntu1~14.04.3'
--with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs --enable-languages=c,c++,java,g
o,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.8 --enable-shared --enable-l
inker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls --with-sysro
ot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable
-gnu-unique-object --disable-libmudflap --enable-plugin --with-system-zlib --disable-br
owser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/jav
a-1.5.0-gcj-4.8-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.
0-gcj-4.8-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with
-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc -
-enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-l
ist=m32,m64,mx32 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu
 --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
generating known_errors.inc
executable host ruby is required. use --with-baseruby option.
make: *** [known_errors.inc] Error 1

Updated by nagachika (Tomoyuki Chikanaga) over 7 years ago

I cannot reproduce with ruby-2.3.1.tar.gz package on Debian GNU/Linux 8.
And known_errors.inc is included in the package file.
Could it be a platform specific issue?

nobu, do you have any idea?

Updated by terceiro (Antonio Terceiro) over 7 years ago

Hi. I am one of the Ruby maintainers in Debian. Needing Ruby to bootstrap Ruby is indeed an issue, specially when adding support for new hardward architectures. Not needing that would be really great.

Could someone familiar with the Ruby build system tell us if it would be possible to remove that dependency, and describe what one would need to change to do that? With a clear list of points to work on (assuming it is possible at all), someone could actually do the work.

Updated by nagachika (Tomoyuki Chikanaga) over 7 years ago

Hi, Antonio. Thank you for your comment.
The ruby tarball packages (including 2.3.x) don't require bootstrap ruby to build. (I've confirmed that it's correct to nobu).
I doubt that this issue is environment specific problem, especially related with Bash on Windows.

arton-san, please check your make recognize known_errors.inc correctly. I don't know how can I do it though...

Updated by shevegen (Robert A. Heiler) over 7 years ago

Needing Ruby to bootstrap Ruby is indeed an issue

Official releases such as:

ftp://ftp.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.xz

do not require a host ruby. However had, I do vaguely remember that
some builds, perhaps was it for dev-releases, may have needed a host
ruby in the past. Not sure why - but the official releases 100% do
not need a host ruby, I can confirm Tomoyuki Chikanaga's comment above.

Does Akio Tajima use ruby from a non-official source? If so, may this
be a faulty check on windows environments? (Though that should not be
the case I assume since it is an "ubuntu environment" on windows.)

Updated by terceiro (Antonio Terceiro) over 7 years ago

Tomoyuki Chikanaga wrote:

Hi, Antonio. Thank you for your comment.
The ruby tarball packages (including 2.3.x) don't require bootstrap ruby to build. (I've confirmed that it's correct to nobu).

Right. I now realize that we have been using tarballs from the GitHub mirror instead of the release tarballs because there were some issues with the release tarballs, such as modifying files shipped in the tarball on make clean, which was an problem for Debian.

So the issue for me here is that if you are working with the source tree directly, then you need an existing Ruby, what makes sense. So I should probably go back to using the release tarballs, and writing patches to fix the issues I have with it.

Thanks for the clarification.

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

  • Status changed from Open to Rejected
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0