Skip to content

Instantly share code, notes, and snippets.

@adamp83
Created August 25, 2010 18:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save adamp83/550022 to your computer and use it in GitHub Desktop.
Save adamp83/550022 to your computer and use it in GitHub Desktop.
I'm having trouble getting RVM to work on a Joyent Accelerator running OpenSolaris. I've followed the instructions on http://rvm.beginrescueend.com/rvm/install/ as follows:
1. Run bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
2. Added [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" into my .bashrc
3. Typed type rvm | head -n1 and received the message "rvm is a function"
4. Run source ~/.rvm/scripts/rvm
5. Run rvm notes
At this point RVM appears to be working. I can run rvm install 1.8.7 and RVM downloads and compiles ruby 1.8.7. If I then run rvm 1.8.7, then ruby -v returns 1.8.7, as expected. However, when I try to install any gems (e.g. running gem install rails --pre) I get the following error:
$ gem install rails --pre
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/openssl/ssl-internal.rb:30: [BUG] Segmentation fault
ruby 1.8.7 (2010-08-16 patchlevel 302) [i386-solaris2.11]
Abort (core dumped)
Any ideas what could be causing this?
Also, ruby 1.9.2 will not install. If I type rvm install 1.9.2 I get the following error:
$ rvm install 1.9.2
info: Installing Ruby from source to: /home/adam/.rvm/rubies/ruby-1.9.2-p0
info: /home/adam/.rvm/src/ruby-1.9.2-p0 has already been extracted.
info: Configuring ruby-1.9.2-p0, this may take a while depending on your cpu(s)...
info: Compiling ruby-1.9.2-p0, this may take a while depending on your cpu(s)...
error: Error running 'make ', please check /home/adam/.rvm/log/ruby-1.9.2-p0/make*.log
error: There has been an error while running make. Aborting the installation.
The log file make.error.log shows:
[2010-08-25 18:06:59] make
make: Warning: Illegal dependency list for target `.DEFAULT'
Undefined first referenced
symbol in file
rb_eArgError bug.o (symbol scope specifies local binding)
ld: fatal: Symbol referencing errors. No output written to ../../../.ext/i386-solaris2.11/-test-/bug-3662/bug.so
collect2: ld returned 1 exit status
make: Fatal error: Command failed for target `../../../.ext/i386-solaris2.11/-test-/bug-3662/bug.so'
Current working directory /home/adam/.rvm/src/ruby-1.9.2-p0/ext/-test-/bug-3662
make: Fatal error: Command failed for target `mkmain.sh'
The file make.log shows:
[2010-08-25 18:06:59] make
gcc -O3 -g -Wall -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-long-long -fPIC -L. -R/home/adam/.rvm/rubies/ruby-1.9.2-p0/lib main.o dmydln.o dmyencoding.o dmyversion.o miniprelude.o array.o bignum.o class.o compar.o complex.o dir.o dln_find.o enum.o enumerator.o error.o eval.o load.o proc.o file.o gc.o hash.o inits.o io.o marshal.o math.o node.o numeric.o object.o pack.o parse.o process.o random.o range.o rational.o re.o regcomp.o regenc.o regerror.o regexec.o regparse.o regsyntax.o ruby.o safe.o signal.o sprintf.o st.o strftime.o string.o struct.o time.o transcode.o util.o variable.o compile.o debug.o iseq.o vm.o vm_dump.o thread.o cont.o ascii.o us_ascii.o unicode.o utf_8.o newline.o flock.o isinf.o signbit.o dmyext.o -lpthread -lrt -lsocket -ldl -lcrypt -lm -o miniruby
rbconfig.rb unchanged
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./enc/make_encmake.rb --builtin-encs="ascii.o us_ascii.o unicode.o utf_8.o" --builtin-transes="newline.o" enc.mk
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb -I. ./tool/compile_prelude.rb ./prelude.rb ./enc/prelude.rb ./gem_prelude.rb prelude.c
gcc -O3 -g -Wall -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-long-long -fPIC -I. -I.ext/include/i386-solaris2.11 -I./include -I. -DRUBY_EXPORT -o prelude.o -c prelude.c
ar rcu libruby-static.a dln.o encoding.o version.o array.o bignum.o class.o compar.o complex.o dir.o dln_find.o enum.o enumerator.o error.o eval.o load.o proc.o file.o gc.o hash.o inits.o io.o marshal.o math.o node.o numeric.o object.o pack.o parse.o process.o random.o range.o rational.o re.o regcomp.o regenc.o regerror.o regexec.o regparse.o regsyntax.o ruby.o safe.o signal.o sprintf.o st.o strftime.o string.o struct.o time.o transcode.o util.o variable.o compile.o debug.o iseq.o vm.o vm_dump.o thread.o cont.o ascii.o us_ascii.o unicode.o utf_8.o newline.o flock.o isinf.o signbit.o prelude.o dmyext.o
gcc -shared -Wl,-h,libruby.so.1 dln.o encoding.o version.o array.o bignum.o class.o compar.o complex.o dir.o dln_find.o enum.o enumerator.o error.o eval.o load.o proc.o file.o gc.o hash.o inits.o io.o marshal.o math.o node.o numeric.o object.o pack.o parse.o process.o random.o range.o rational.o re.o regcomp.o regenc.o regerror.o regexec.o regparse.o regsyntax.o ruby.o safe.o signal.o sprintf.o st.o strftime.o string.o struct.o time.o transcode.o util.o variable.o compile.o debug.o iseq.o vm.o vm_dump.o thread.o cont.o ascii.o us_ascii.o unicode.o utf_8.o newline.o flock.o isinf.o signbit.o prelude.o dmyext.o -lpthread -lrt -lsocket -ldl -lcrypt -lm -o libruby.so.1
gobjcopy -w -L 'Init_*' -L '*_threadptr_*' libruby.so.1
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./tool/generic_erb.rb -c -o encdb.h ./template/encdb.h.tmpl ./enc enc
encdb.h unchanged
make -f enc.mk RUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " MINIRUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " enc
`enc' is up to date.
make -f enc.mk RUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " MINIRUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " srcs
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./tool/generic_erb.rb -c -o transdb.h ./template/transdb.h.tmpl ./enc/trans enc/trans
transdb.h unchanged
make -f enc.mk RUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " MINIRUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " ./enc/trans
`enc/trans' is up to date.
make -f enc.mk RUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " MINIRUBY="./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb " encs
/opt/local/bin/gmkdir -p .ext/i386-solaris2.11/enc .ext/i386-solaris2.11/enc/trans enc enc/trans
compiling -test-/bug-3662
gcc -shared -o ../../../.ext/i386-solaris2.11/-test-/bug-3662/bug.so bug.o -L. -L../../.. -L. -lruby -lpthread -lrt -lsocket -ldl -lcrypt -lm -lc
*** Error code 1
*** Error code 1
The following command caused the error:
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./ext/extmk.rb --make="make" --command-output=mkmain.sh --dest-dir="" --extout=".ext" --mflags="" --make-flags="" --extension --extstatic --make-flags="MINIRUBY='./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb '" --
Any help with either of these problems would be very much appreciated
Many thanks,
Adam
@adamp83
Copy link
Author

adamp83 commented Aug 25, 2010

The issue with ruby 1.8.7 is a problem with RVM on OpenSolaris. To solve it, follow the instructions on http://rvm.beginrescueend.com/packages/openssl/. Basically, run

rvm package install openssl
rvm remove 1.8.7
rvm install 1.8.7 -C --with-openssl-dir=$HOME/.rvm/usr

The problem with ruby 1.9.2 (and it seems 1.9.1) is a problem compiling Ruby on OpenSolaris. A bug has been reported.

@adamp83
Copy link
Author

adamp83 commented Aug 26, 2010

An update on this - there still seems to be a problem. I have now run

rvm package install openssl
rvm package install iconv
rvm remove 1.8.7
rvm install 1.8.7 -C --with-openssl-dir=$HOME/.rvm/usr,--with-iconv-dir=$HOME/.rvm/usr

I am now getting the following error when I try to run rake test:units (or to start an application):

$ rake test:units --trace
(in /home/adam/apps/kclqb/kclqb)
WARNING: Nokogiri was built against LibXML version 2.6.30, but has dynamically loaded 2.6.31
rake aborted!
ld.so.1: ruby: fatal: relocation error: file /home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i386-solaris2.11/openssl.so: symbol EC_GROUP_new_curve_GF2m: referenced symbol not found - /home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i386-solaris2.11/openssl.so
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i386-solaris2.11/openssl.so
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/openssl.rb:17
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/https.rb:102:in `require                                                                             '
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/net/https.rb:102
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/google-spreadsheet-ruby-0.1.1/lib/google_spreadsheet.rb:6:in `require'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/google-spreadsheet-ruby-0.1.1/lib/google_spreadsheet.rb:6
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/roo-1.9.3/lib/roo/google.rb:2:in `require'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/roo-1.9.3/lib/roo/google.rb:2
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/roo-1.9.3/lib/roo.rb:71:in `require'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/roo-1.9.3/lib/roo.rb:71
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/bundler-1.0.0.rc.6/lib/bundler/runtime.rb:64:in `require'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/bundler-1.0.0.rc.6/lib/bundler/runtime.rb:64:in `require'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/bundler-1.0.0.rc.6/lib/bundler/runtime.rb:62:in `each'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/bundler-1.0.0.rc.6/lib/bundler/runtime.rb:62:in `require'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/bundler-1.0.0.rc.6/lib/bundler/runtime.rb:51:in `each'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/bundler-1.0.0.rc.6/lib/bundler/runtime.rb:51:in `require'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/bundler-1.0.0.rc.6/lib/bundler.rb:112:in `require'
/home/adam/apps/kclqb/kclqb/config/application.rb:7
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
/home/adam/apps/kclqb/kclqb/Rakefile:4
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:2383:in `load'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:2383:in `raw_load_rakefile'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:2017:in `load_rakefile'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:2016:in `load_rakefile'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:2000:in `run'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/lib/rake.rb:1998:in `run'
/home/adam/.rvm/gems/ruby-1.8.7-p302/gems/rake-0.8.7/bin/rake:31
/home/adam/.rvm/gems/ruby-1.8.7-p302/bin/rake:19:in `load'
/home/adam/.rvm/gems/ruby-1.8.7-p302/bin/rake:19

@adamp83
Copy link
Author

adamp83 commented Aug 26, 2010

Update - this is not a Nokogiri problem! I removed the Nokogiri gem, I can now start a rails server but get the following error:

ld.so.1: ruby: fatal: relocation error: file /home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i386-solaris2.11/openssl.so: symbol EC_GROUP_new_curve_GF2m: referenced symbol not found - /home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i386-solaris2.11/openssl.so

Full stack trace:

/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/i386-solaris2.11/openssl.so
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:219:in `require'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:205:in `load_dependency'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:570:in `new_constants_in'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:205:in `load_dependency'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:219:in `require'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/openssl.rb:17
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:219:in `require'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:219:in `require'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:205:in `load_dependency'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:570:in `new_constants_in'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:205:in `load_dependency'
activesupport (3.0.0.rc) lib/active_support/dependencies.rb:219:in `require'
activesupport (3.0.0.rc) lib/active_support/message_verifier.rb:58:in `generate_digest'
activesupport (3.0.0.rc) lib/active_support/message_verifier.rb:42:in `generate'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/cookies.rb:228:in `[]='
actionpack (3.0.0.rc) lib/action_dispatch/middleware/session/cookie_store.rb:77:in `set_cookie'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/session/abstract_store.rb:169:in `call'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/cookies.rb:268:in `call'
activerecord (3.0.0.rc) lib/active_record/query_cache.rb:32:in `call'
activerecord (3.0.0.rc) lib/active_record/connection_adapters/abstract/query_cache.rb:28:in `cache'
activerecord (3.0.0.rc) lib/active_record/query_cache.rb:12:in `cache'
activerecord (3.0.0.rc) lib/active_record/query_cache.rb:31:in `call'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/callbacks.rb:46:in `call'
activesupport (3.0.0.rc) lib/active_support/callbacks.rb:410:in `_run_call_callbacks'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/callbacks.rb:44:in `call'
rack (1.2.1) lib/rack/sendfile.rb:107:in `call'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/remote_ip.rb:48:in `call'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/show_exceptions.rb:48:in `call'
railties (3.0.0.rc) lib/rails/rack/logger.rb:13:in `call'
rack (1.2.1) lib/rack/runtime.rb:17:in `call'
activesupport (3.0.0.rc) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.2.1) lib/rack/lock.rb:11:in `call'
rack (1.2.1) lib/rack/lock.rb:11:in `synchronize'
rack (1.2.1) lib/rack/lock.rb:11:in `call'
actionpack (3.0.0.rc) lib/action_dispatch/middleware/static.rb:30:in `call'
railties (3.0.0.rc) lib/rails/application.rb:168:in `call'
railties (3.0.0.rc) lib/rails/application.rb:77:in `send'
railties (3.0.0.rc) lib/rails/application.rb:77:in `method_missing'
railties (3.0.0.rc) lib/rails/rack/log_tailer.rb:15:in `call'
rack (1.2.1) lib/rack/content_length.rb:13:in `call'
rack (1.2.1) lib/rack/handler/webrick.rb:52:in `service'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:162:in `start'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:95:in `start'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:92:in `each'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:92:in `start'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:23:in `start'
/home/adam/.rvm/rubies/ruby-1.8.7-p302/lib/ruby/1.8/webrick/server.rb:82:in `start'
rack (1.2.1) lib/rack/handler/webrick.rb:13:in `run'
rack (1.2.1) lib/rack/server.rb:213:in `start'
railties (3.0.0.rc) lib/rails/commands/server.rb:65:in `start'
railties (3.0.0.rc) lib/rails/commands.rb:30
railties (3.0.0.rc) lib/rails/commands.rb:27:in `tap'
railties (3.0.0.rc) lib/rails/commands.rb:27
script/rails:6:in `require'
script/rails:6


This error occurred while loading the following files:
   openssl
   openssl.so

@codeodor
Copy link

codeodor commented Sep 7, 2011

Did you ever find out how to build openssl or Ruby and remove that "referenced symbol not found" error?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment