Bug #9312
closedBuild the ruby executable in bin/
Description
In order to allow Ruby Switchers to directly use a Ruby that is built but not installed (such as trunk or a branch), the ruby executable should be placed in the bin/ directory.
Updated by nobu (Nobuyoshi Nakada) over 10 years ago
- Status changed from Open to Feedback
make ruunable
may help you?
Updated by nobu (Nobuyoshi Nakada) over 10 years ago
Sorry, runnable
.
Updated by postmodern (Hal Brodigan) over 10 years ago
Test on trunk (r44467)
$ ./configure
$ make
$ make runnable
make: *** No rule to make target un-runnable', needed by
runnable'. Stop.
Updated by nobu (Nobuyoshi Nakada) over 10 years ago
To make relocatable, configure needs --enable-shared and --enable-load-relative.
Updated by postmodern (Hal Brodigan) over 10 years ago
$ ./configure --enable-shared --enable-load-relative
$ make
...
making enc
make[1]: Entering directory `/vault/0/src/ruby/trunk'
linking encoding encdb.so
/usr/bin/ld: cannot find -l-lpthread
collect2: error: ld returned 1 exit status
Updated by postmodern (Hal Brodigan) over 10 years ago
Running make runnable
appears to add a bin/goruby
hardlink to ../goruby
.
Updated by nobu (Nobuyoshi Nakada) over 10 years ago
mkrunnable.rb creates symlinks only.
Updated by postmodern (Hal Brodigan) over 10 years ago
After updated again, I see that make runnable
created a bin/ruby symlink. However, --enable-shared requires that LD_LIBRARY_PATH=./lib/ is set. Also, bin/ruby cannot find core libraries such as 'thread'.
Updated by nobu (Nobuyoshi Nakada) over 10 years ago
What's your platform?
Updated by postmodern (Hal Brodigan) about 10 years ago
Fedora Linux 19 x86-64
Updated by mame (Yusuke Endoh) over 4 years ago
- Status changed from Feedback to Rejected
- Backport deleted (
1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN)
Closing as it is not a bug.
A ruby binary that is built but not installed is half-baked. It is very hacky to run it without installation; it requires setting library paths, GEM_HOME, etc and etc. In the build process, the half-baked ruby binary is invoked with this script: https://github.com/ruby/ruby/blob/master/tool/runruby.rb
So I guess that just putting bin/ruby
does not solve the issue. And, as far as I know, rbenv works well without this feature, so I'm unsure if it is really needed.
Updated by nobu (Nobuyoshi Nakada) over 4 years ago
Note that make runnable
makes links in bin/
, which might be able to run if configured with --enable-load-relative
option.