Ruby 1.9.3 build fails on CentOS4 with such errors:
linking ruby
main.o(.text+0x3c): In function main': : undefined reference to ruby_sysinit'
main.o(.text+0x47): In function main': : undefined reference to ruby_init_stack'
main.o(.text+0x4c): In function main': : undefined reference to ruby_init'
main.o(.text+0x5e): In function main': : undefined reference to ruby_options'
main.o(.text+0x66): In function main': : undefined reference to ruby_run_node'
I found All symbols of libruby.so get LOCAL/HIDDEN visibility. For example:
$ readelf -a libruby.so|grep ruby_sysinit
6260: 000e01f0 561 FUNC LOCAL HIDDEN 10 ruby_sysinit
I am building on CentOS4 i386 with GCC:
$ gcc --version
gcc (GCC) 3.4.4 20050721 (Red Hat 3.4.4-2)
This issue was solved with changeset r37296.
Robin, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
configure.in: no visibility option for older GCC
configure.in (visibility_option): visibility attribute is not
available before GCC 4, so do not use -fvisibility option in that
case. [ruby-core:48147] [Bug #7205]
This issue was solved with changeset r37552.
Robin, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
merge revision(s) 37296: [Backport #7205]
* configure.in (visibility_option): visibility attribute is not
available before GCC 4, so do not use -fvisibility option in that
case. [ruby-core:48147] [Bug #7205]