Bug #12587
closedruby released tarball require ruby
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 8 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 8 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 8 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 8 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 8 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 8 years ago
- Status changed from Open to Rejected