Project

General

Profile

Actions

Bug #18623

closed

`make runnable` does not work

Added by duerst (Martin Dürst) about 2 years ago. Updated over 1 year ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 3.1.0dev (2021-06-03T06:59:33Z master 7e14762159) [x86_64-linux]
[ruby-core:107844]

Description

When I try make runnable to be able to run individual tests with .\ruby test/runner.rb ..., I get the error below. It is important to solve this so I can make progress on Feature #18037. Except for the problem reported at Bug #18614, comprehensive tests such as make check work fine.

duerst@Kloentalersee:~/14ruby$ make runnable
        BASERUBY = /usr/local/bin/ruby --disable=gems
        CC = gcc
        LD = ld
        LDSHARED = gcc -shared
        CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Werror=deprecated-declarations -Werror=div-by-zero -Werror=duplicated-cond -Werror=implicit-function-declaration -Werror=implicit-int -Werror=misleading-indentation -Werror=pointer-arith -Werror=write-strings -Werror=old-style-definition -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Werror=undef -std=gnu99
        XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fno-strict-overflow -DRUBY_DEVEL=1 -fvisibility=hidden -fexcess-precision=standard -DRUBY_EXPORT -fPIE -I. -I.ext/include/x86_64-linux -I./include -I. -I./enc/unicode/14.0.0
        CPPFLAGS =
        DLDFLAGS = -Wl,--compress-debug-sections=zlib -fstack-protector-strong -pie
        SOLIBS = -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm
        LANG = C.UTF-8
        LC_ALL =
        LC_CTYPE =
        MFLAGS =
gcc (Ubuntu 9.4.0-1ubuntu1~20.04) 9.4.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

ln -f goruby ./bin/goruby
/home/duerst/14ruby/lib/fileutils.rb:301:in `link': No such file or directory @ rb_file_s_link - (goruby, ./bin/goruby) (Errno::ENOENT)
        from /home/duerst/14ruby/lib/fileutils.rb:301:in `block in ln'
        from /home/duerst/14ruby/lib/fileutils.rb:1593:in `fu_each_src_dest0'
        from /home/duerst/14ruby/lib/fileutils.rb:299:in `ln'
        from /home/duerst/14ruby/lib/fileutils.rb:1695:in `ln'
        from ./tool/mkrunnable.rb:59:in `ln_exe'
        from ./tool/mkrunnable.rb:96:in `ln_relative'
        from ./tool/mkrunnable.rb:131:in `block in <main>'
        from ./tool/mkrunnable.rb:128:in `map'
        from ./tool/mkrunnable.rb:128:in `<main>'
make: *** [uncommon.mk:872: runnable] Error 1
duerst@Kloentalersee:~/14ruby$

Updated by duerst (Martin Dürst) about 2 years ago

Just for the record, on a completely new checkout:

$ ruby -v
ruby 3.1.0dev (2021-06-03T06:59:33Z master 7e14762159) [x86_64-linux]
$ ./ruby -v
ruby 3.2.0dev (2022-03-15T23:46:04Z master 48f1e8c5d8) [x86_64-linux]

Command used to configure:
$ ./configure --enable-load-relative --disable-install-doc

By the way, I'm not really sure what files (or directories) are missing. Does the message
/home/duerst/14ruby/lib/fileutils.rb:301:in link': No such file or directory @ rb_file_s_link - (goruby, ./bin/goruby) (Errno::ENOENT)mean thatgorubyand./bin/gorubyare missing? These files are indeed missing, but I don't understand why they are needed forrunnable`, or why they are missing.

Updated by duerst (Martin Dürst) over 1 year ago

@nakada: I again hit this. I found out that the solution is easy, just do make goruby before using make runnable. I propose to add goruby to the targets necessary when creating runnable, to avoid additional steps and unnecessary confusion.

Actions #3

Updated by nobu (Nobuyoshi Nakada) over 1 year ago

  • Status changed from Open to Closed

Applied in changeset git|901471ab8a36f841fbd1f7396877444a25b06db6.


[Bug #18623] Link only existing excutables to make runnable [ci skip]

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0