Loading…
|
sj26 |
Removing visibility flag hiding required symbols in ruby binary durin…
…
…g final linking. Fixes ruby-debug19, along with many other extensions. |
1f88c47
|
This fixes passenger support, too.
You might want to look at:
http://redmine.ruby-lang.org/issues/5193
Which is about getting ruby-debug working again on 1.9.3
The problem is that these symbols are marked as RUBY_EXTERN
, are globally available in the ruby static library, but are not visible in the ruby binary itself.
ruby_current_thread
, for example, is marked as an external symbol in the data section, and is visible in libruby-static.a
but not in ruby
:
$ nm -U libruby-static.a | grep ruby_current_thread
0000000000131e88 D _ruby_current_thread
$ nm -U ruby | grep ruby_current_thread
00000001002249d0 d _ruby_current_thread
Is this by design? Should these symbols only be used by the primarily linking binary and not by shared libraries?
The impression I got was that there might be an official interface to this instead? In any case, hiding symbols is going to break compatibility with many plugins.
After installing the tuned ruby using https://gist.github.com/1688857 my specs run about 10-20% faster. No problems nor instabilities so far -> +1 :)
Removing visibility flag hiding required symbols in ruby binary durin… …
…g final linking. Fixes ruby-debug19, along with many other extensions.
Removing visibility flag hiding required symbols in ruby binary during final linking.
Fixes ruby-debug19, along with many other extensions.