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