Bug #2484
closedNeither 1.8.6 or 1.8.7 can serve as base ruby for cross compilation
Description
=begin
I've originally reported a similar issue in #2464, but was rejected.
He stated the following:
"You seem to use Ruby 1.8.6 for bulding Ruby 1.9.1.
But Ruby 1.9's lib/mkmf.rb can't run with Ruby 1.8.6."
Which in the past worked but randomly failed between patchelevels.
Today, tried to use 1.8.7 as suggested, with a different failure this time:
compiling bigdecimal
/Users/luis/.rvm/ruby-1.8.7-p174/lib/ruby/1.8/fileutils.rb:1436:in `dup': can't dup NilClass (TypeError)
from /Users/luis/.rvm/ruby-1.8.7-p174/lib/ruby/1.8/fileutils.rb:1436:in `fu_check_options'
from /Users/luis/.rvm/ruby-1.8.7-p174/lib/ruby/1.8/fileutils.rb:568:in `rm_f'
from /Users/luis/.rake-compiler/sources/ruby-1.9.1-p376/lib/mkmf.rb:195:in `rm_f'
from /Users/luis/.rake-compiler/sources/ruby-1.9.1-p376/ext/extmk.rb:161:in `extmake'
from /Users/luis/.rake-compiler/sources/ruby-1.9.1-p376/ext/extmk.rb:440
from /Users/luis/.rake-compiler/sources/ruby-1.9.1-p376/ext/extmk.rb:436:in `each'
from /Users/luis/.rake-compiler/sources/ruby-1.9.1-p376/ext/extmk.rb:436
make: *** [mkmain.sh] Error 1
I've also tried to compile 1.9.2dev using 1.8.6, all without issues. So the problem remains in 1.9.1 branch.
Looking at 1.9.1 branch, I don't see any documentation or indication of exact Ruby version required to compile it.
=end
Updated by naruse (Yui NARUSE) almost 15 years ago
- Status changed from Open to Rejected
=begin
Sorry for not detailed previous answer; on cross compiling, BASERUBY should be the same version of target.
(strictly same patch level, if it affects a behavior)
=end
Updated by luislavena (Luis Lavena) almost 15 years ago
=begin
Thank you for your answer.
This requirement is something new.
Can you please indicate a link/file where this is being listed?
A partial functionality of rake-compiler is the ability to cross compile different versions of Ruby. I would like to update it and point to the proper documentation about the inability to do it anymore.
=end
Updated by luislavena (Luis Lavena) almost 15 years ago
=begin
Apologies, found the link on ticket #2464.
Reading at that page and checking the history, seems you adapted it just now ;-)
The funny thing is that 1.8.6 can still cross compile 1.9.2dev.
Looks like I have no choice than indicate the break of this feature to the users of rake-compiler tool.
=end
Updated by naruse (Yui NARUSE) almost 15 years ago
=begin
Requirement for cross compiling didn't clearly showed before you pointed.
And now, we put a current policy: if you use the same version you can cross compile; if you cannot, it is a bug.
Yes, current situation seems funny. But you know, current ruby core team can't check cross compiling status so often.
If you or someone can check and will create ticket every failure with a patch, please create feature request ticket.
=end