Installing RubyGems 0.0.4 on Solaris 2.6

Hi all,

Just wondering if anyone can assist here -

Have installed Ruby 1.8.6 on Solaris 2.6 (Sparc), and that seemed to install ok. I then went to install RubyGems (as the good book suggests) and found that I encounter an error partway through the installation (executed 'ruby setup.rb' at the location of where I extracted the RubyGem tarfile).

<----------------------------------------------------------------------------------------------------------------

... install unpack_command.rb /usr/local/lib/ruby/site_ruby/1.8/rubygems/ commands install update_command.rb /usr/local/lib/ruby/site_ruby/1.8/rubygems/ commands <--- lib/rubygems/commands ---> lib/rubygems/digest mkdir -p /usr/local/lib/ruby/site_ruby/1.8/rubygems/digest install digest_adapter.rb /usr/local/lib/ruby/site_ruby/1.8/rubygems/ digest install md5.rb /usr/local/lib/ruby/site_ruby/1.8/rubygems/digest install sha1.rb /usr/local/lib/ruby/site_ruby/1.8/rubygems/digest install sha2.rb /usr/local/lib/ruby/site_ruby/1.8/rubygems/digest <--- lib/rubygems/digest <--- lib/rubygems <--- lib /usr/local/lib/ruby/1.8/sparc-solaris2.6/thread.so: ld.so.1: ruby: fatal: libgcc_s.so.1: open failed: No such file or directory - /usr/ local/lib/ruby/1.8/sparc-solaris2.6/thread.so (LoadError)         from /usr/local/lib/ruby/1.8/thread.rb:5         from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:85:in `require'         from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:85         from /dsk1/rubygems-0.9.4/./post-install.rb:81:in `require'         from /dsk1/rubygems-0.9.4/./post-install.rb:81:in `install_sources'         from /dsk1/rubygems-0.9.4/./post-install.rb:116:in `run_hook'         from setup.rb:1526:in `exec_task_traverse'         from setup.rb:1342:in `exec_install'         from setup.rb:1000:in `exec_install'         from setup.rb:814:in `invoke'         from setup.rb:773:in `invoke'         from setup.rb:1578 <----------------------------------------------------------------------------------------------------------------

I'm not sure what I'm missing here as the three files (thread.so, ld.so.1 and libgcc_s.so.1) are all in the PATH, and can be seen???

Thanks in advance.

Brad

You may get better help on the Rubygems list, but my response may be of some help.

Hi all,

Just wondering if anyone can assist here -

Have installed Ruby 1.8.6 on Solaris 2.6 (Sparc), and that seemed to

Did you run make test or make check? Might be more informative than "seemed to install OK" :slight_smile:

install ok. I then went to install RubyGems (as the good book

Yes, but not 0.0.4 as in the subject??

suggests) and found that I encounter an error partway through the installation (executed 'ruby setup.rb' at the location of where I extracted the RubyGem tarfile).

<----------------------------------------------------------------------------------------------------------------

        [...]

install sha2.rb /usr/local/lib/ruby/site_ruby/1.8/rubygems/digest <--- lib/rubygems/digest <--- lib/rubygems <--- lib /usr/local/lib/ruby/1.8/sparc-solaris2.6/thread.so: ld.so.1: ruby: fatal: libgcc_s.so.1: open failed: No such file or directory - /usr/ local/lib/ruby/1.8/sparc-solaris2.6/thread.so (LoadError)         from /usr/local/lib/ruby/1.8/thread.rb:5

        [stack trace trimmed]

<---------------------------------------------------------------------------------------------------------------- >

I'm not sure what I'm missing here as the three files (thread.so, ld.so.1 and libgcc_s.so.1) are all in the PATH, and can be seen???

What do you have for the environment LD_LIBRARY_PATH ?

Also, I can't see from that if you ARE using Sun's ld (as I think) so it might be useful to tell others who understand this better than I, what versions of binutils you have if any, and what version of GCC for that matter.

Thanks in advance.

Brad

        HTH         Hugh

Thanks for the quick reply Hugh. I ran a make test (with success) and then a make check (which it would appears fails).

The LD_LIBRARY_PATH variable is not set - can you give me hint as to what order of libray paths to set this to please? (eg. /usr/lib:/lib:/ usr/ccs/lib:/usr/local/lib - ie. system libraries, development libraries and then /usr/local/lib???).

By the way, I have GCC v3.3.2, however I have libgcc 3.4.6 installed alongside, and severl revisions of openssl (the latest being 0.9.8e).

You're probably thinking newbie .. but any pointers you can give will be gratefully accepted.

Cheers Brad

/dsk1/ruby-1.8.6 # make test test succeeded # make check test succeeded ./miniruby ./runruby.rb --extout=.ext -- "./test/runner.rb" -- basedir="./test" --runner=console /dsk1/ruby-1.8.6/.ext/sparc-solaris2.6/digest.so: ld.so.1: ./ruby: fatal: libgcc_s.so.1: open failed: No such file or directory - /dsk1/ ruby-1.8.6/.ext/sparc-solaris2.6/digest.so (LoadError)         from /dsk1/ruby-1.8.6/.ext/common/digest.rb:1         from ./test/digest/test_digest.rb:8:in `require'         from ./test/digest/test_digest.rb:8         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:90:in `require'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:90:in `collect_file'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:73:in `recursive_collect'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:58:in `each'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:58:in `recursive_collect'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:63:in `recursive_collect'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:58:in `each'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:58:in `recursive_collect'         from /dsk1/ruby-1.8.6/lib/test/unit/collector/dir.rb:29:in `collect'         from /dsk1/ruby-1.8.6/lib/test/unit/autorunner.rb:68         from /dsk1/ruby-1.8.6/lib/test/unit/autorunner.rb:213:in `'         from /dsk1/ruby-1.8.6/lib/test/unit/autorunner.rb:213:in `run'         from /dsk1/ruby-1.8.6/lib/test/unit/autorunner.rb:12:in `run'         from ./test/runner.rb:7 make: *** [test-all] Error 1 # echo $LD_LIBRARY_PATH

# pkginfo | grep SMC application SMCapache apache application SMCautoc autoconf application SMCautom automake application SMCdb db application SMCegd egd application SMCexpat expat application SMCgcc gcc application SMCgzip gzip application SMCiconv libiconv application SMClg346 libgcc application SMCmake make application SMCmysql mysql application SMCncurs ncurses application SMCosl98b openssl application SMCossh4 openssh application SMCossl openssl application SMCosslg openssl application SMCprngd prngd application SMCtcpdwr tcp_wrappers application SMCtop top application SMCzlib zlib # pkginfo -l SMCgcc    PKGINST: SMCgcc       NAME: gcc   CATEGORY: application       ARCH: sparc    VERSION: 3.3.2    BASEDIR: /usr/local     VENDOR: Free Software Foundation     PSTAMP: Steve Christensen   INSTDATE: Sep 17 2006 09:54      EMAIL: steve@smc.vnet.net     STATUS: completely installed      FILES: 2233 installed pathnames                 11 shared pathnames                  6 linked files                152 directories                 44 executables             361605 blocks used (approx)

Thanks guys...this problem now solved.

Thanks for the quick reply Hugh. I ran a make test (with success) and then a make check (which it would appears fails).

Make check runs all the Rubicon tests some of which are known to fail. The details of that would be much better on a Ruby, rather than a rails list.

The LD_LIBRARY_PATH variable is not set - can you give me hint as to what order of libray paths to set this to please? (eg. /usr/lib:/lib:/ usr/ccs/lib:/usr/local/lib - ie. system libraries, development libraries and then /usr/local/lib???).

That would be about the right order if you are using sun's ld,

I'm on Solaris9 and mine is like this:

/progs/SUNWspro/lib:/usr/local/lib:/usr/local/lib/sparcv9:/usr/lib:/usr/share/lib:/usr/dt/lib:/usr/openwin/lib:/opt/panorama/lib:/opt/sfw/lib

SUNWspro is the Forte compiler stuff.

By the way, I have GCC v3.3.2, however I have libgcc 3.4.6 installed alongside, and severl revisions of openssl (the latest being 0.9.8e).

You may want the library path to include the SSL stuff, wherever that ends up.

You're probably thinking newbie .. but any pointers you can give will

No, the levels of complexity "go all thw way down" -- I've been working on Sun systems from about 1988, and still have lots to learn

It may take some fiddling to get this sort of thing right, but probably the best thing to do is rebuild ruby when you have because it has its own libraries, uses configure and thus LD_LIBRARY_PATH to figure things out, so changes will be significant....

be gratefully accepted.

Cheers Brad

/dsk1/ruby-1.8.6 # make test test succeeded # make check test succeeded ./miniruby ./runruby.rb --extout=.ext -- "./test/runner.rb" -- basedir="./test" --runner=console /dsk1/ruby-1.8.6/.ext/sparc-solaris2.6/digest.so: ld.so.1: ./ruby: fatal: libgcc_s.so.1: open failed: No such file or directory - /dsk1/ ruby-1.8.6/.ext/sparc-solaris2.6/digest.so (LoadError)

... like here for example.

        [...]

        from ./test/runner.rb:7 make: *** [test-all] Error 1 # echo $LD_LIBRARY_PATH

# pkginfo | grep SMC application SMCgcc gcc application SMCgzip gzip application SMCiconv libiconv application SMClg346 libgcc application SMCmake make

Best to use GNU's make rather than Sun's, BYTK.         [...]

# pkginfo -l SMCgcc    PKGINST: SMCgcc       NAME: gcc   CATEGORY: application       ARCH: sparc    VERSION: 3.3.2    BASEDIR: /usr/local     VENDOR: Free Software Foundation     PSTAMP: Steve Christensen   INSTDATE: Sep 17 2006 09:54      EMAIL: steve@smc.vnet.net     STATUS: completely installed      FILES: 2233 installed pathnames                 11 shared pathnames                  6 linked files                152 directories                 44 executables             361605 blocks used (approx)

OK. I'm not familiar with that source of GCC, but have no reason to doubt its quality.

        HTH         Hugh