tmm1 / amqp

AMQP client implementation in Ruby/EventMachine

Home Page:http://groups.google.com/group/ruby-amqp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Solaris: pr_eventmachine.rb:381:in `stop': not running (EventMachine::Error)

charl opened this issue · comments

I get the following errors when tryinf to utilise any code that uses the worker pattern as used in prime.rb on Solaris 10:

$ ./primes.rb 2
/usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:381:in stop': not running (EventMachine::Error) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:73:instop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:451:in stop_event_loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:306:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:intimes'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:in``' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:ingenerate'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:284:in install_oneshot_timer' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:59:inadd_oneshot_timer'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:356:in add_timer' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:237:inrun'
/usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:381:in stop': not running (EventMachine::Error) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:73:instop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:451:in stop_event_loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:306:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in times' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:in``' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:intimes'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:107:infork'
from ./primes.rb:17
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:in generate' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:284:ininstall_oneshot_timer'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:59:in add_oneshot_timer' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:356:inadd_timer'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:237:in run' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:instart'
from ./primes.rb:39
/usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:381:in stop': not running (EventMachine::Error) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:73:instop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:451:in stop_event_loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:306:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:intimes'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:in``' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:244:ingenerate'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:284:in install_oneshot_timer' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:59:inadd_oneshot_timer'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:356:in add_timer' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:237:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in times' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:107:in fork' from ./primes.rb:17 ["poller01-20260-577800", :started] /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:infork': undefined method call' for nil:NilClass (NoMethodError) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in event_callback' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:inrun_timers'
from (eval):44:in each' from (eval):44:ineach'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:in run_timers' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in times' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in select' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incrank_selectables'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:instart'
from ./primes.rb:39
["poller01-20279-577800", :started]
/usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:in fork': undefined methodcall' for nil:NilClass (NoMethodError)
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:inevent_callback'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:in run_timers' from (eval):44:ineach'
from (eval):44:in each' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:inrun_timers'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:intimes'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:inselect'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in crank_selectables' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:in start' from ./primes.rb:39 /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:infork': undefined method call' for nil:NilClass (NoMethodError) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in event_callback' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:inrun_timers'
from (eval):44:in each' from (eval):44:ineach'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:in run_timers' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in times' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in select' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incrank_selectables'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:instart'
from ./primes.rb:39
/usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:in fork': undefined methodcall' for nil:NilClass (NoMethodError)
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:inevent_callback'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:in run_timers' from (eval):44:ineach'
from (eval):44:in each' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:inrun_timers'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:intimes'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:inselect'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in crank_selectables' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:in start' from ./primes.rb:39 /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:infork': undefined method call' for nil:NilClass (NoMethodError) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in event_callback' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:inrun_timers'
from (eval):44:in each' from (eval):44:ineach'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:in run_timers' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in times' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in select' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incrank_selectables'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:instart'
from ./primes.rb:39
/usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:in fork': undefined methodcall' for nil:NilClass (NoMethodError)
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:inevent_callback'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:in run_timers' from (eval):44:ineach'
from (eval):44:in each' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:inrun_timers'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:intimes'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:inselect'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in crank_selectables' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:in start' from ./primes.rb:39 /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:infork': undefined method call' for nil:NilClass (NoMethodError) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in event_callback' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:inrun_timers'
from (eval):44:in each' from (eval):44:ineach'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:in run_timers' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in times' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in select' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incrank_selectables'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:instart'
from ./primes.rb:39
[:checking, 10000]
[:checking, 10001]
/usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:in fork': undefined methodcall' for nil:NilClass (NoMethodError)
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in call' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:inevent_callback'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:in run_timers' from (eval):44:ineach'
from (eval):44:in each' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:inrun_timers'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork_reactor'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:intimes'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in fork' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp/client.rb:115:in call' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp/client.rb:115:inreceive_data'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1506:in event_callback' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:550:ineventable_read'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:548:in times' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:548:ineventable_read'
from (FORWARDABLE):3:in __send__' from (__FORWARDABLE__):3:ineventable_read'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:369:in crank_selectables' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:369:ineach'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:369:in crank_selectables' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:in start' from ./primes.rb:39 ["prime checker poller01-20279-577800", :prime?, 10000] ["prime checker poller01-20279-577800", :prime?, 10001] /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:40:infork': undefined method call' for nil:NilClass (NoMethodError) from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:1503:in event_callback' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:342:inrun_timers'
from (eval):44:in each' from (eval):44:ineach'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:339:in run_timers' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:322:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in loop' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:in run_machine' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:inrun'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:310:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:infork'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:304:in fork_reactor' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:33:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:in times' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:32:infork'
from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/ext/emfork.rb:18:in fork' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incall'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:in select' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:366:incrank_selectables'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:324:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:inloop'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:318:in run' from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/pr_eventmachine.rb:64:inrun_machine'
from /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/eventmachine.rb:242:in run' from /usr/local/lib/ruby/gems/1.8/gems/tmm1-amqp-0.6.4/lib/amqp.rb:84:instart'
from ./primes.rb:39
[:prime?, 10000, false]
[:prime?, 10001, false]
[:primes=, nil]

The source:


#!/usr/bin/env ruby


require 'rubygems'
require 'mq'

# check MAX numbers for prime-ness
MAX = 2

# logging
def log *args
  p args
end

# spawn workers
workers = ARGV[0] ? (Integer(ARGV[0]) rescue 1) : 1
AMQP.fork(workers) do

  log MQ.id, :started

  class Fixnum
    def prime?
      ('1' * self) !~ /^1?$|^(11+?)\1+$/
    end
  end

  class PrimeChecker
    def is_prime? number
      log "prime checker #{MQ.id}", :prime?, number
      number.prime?
    end
  end

  MQ.rpc('prime checker', PrimeChecker.new)

end

# use workers to check which numbers are prime
AMQP.start(:host => 'localhost') do

  prime_checker = MQ.rpc('prime checker')

  (10_000...(10_000+MAX)).each do |num|
    log :checking, num

    prime_checker.is_prime?(num) { |is_prime|
      log :prime?, num, is_prime
      (@primes||=[]) << num if is_prime

      if (@responses = (@responses || 0) + 1) == MAX
        log :primes=, @primes
        EM.stop_event_loop
      end
    }
  end
end

This same script works fine on both OS X and Linux.

How did you install eventmachine? It did not install correctly, and is trying to use the pure ruby reactor.

Via the gem:


$ ls -la eventmachine-0.12.8.gem 
-rw------- 1 cmatthee other 214528 Oct 15 09:16 eventmachine-0.12.8.gem
$ md5sum eventmachine-0.12.8.gem
379f839bd32ee2ada63a2d4ba5e978e3  eventmachine-0.12.8.gem

Can you paste the output of gem install? Also what happens if you go into /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/ and type make? Can you also pastie.org the mkmf.log file in that directory?

Gem install output: http://pastie.org/657064

Manual make:


$ cd /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/ 
$ pwd
/usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8
$ make
make: *** No targets specified and no makefile found.  Stop.

Make logs: http://pastie.org/657072

interesting. what happens if you ruby -e' require "/usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/rubyeventmachine" '


$ ruby -e' require "/usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/rubyeventmachine" '
/usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/rubyeventmachine.so: ld.so.1: ruby: fatal: relocation error: file /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/rubyeventmachine.so: symbol _ZNSs4_Rep20_S_empty_rep_storageE: referenced symbol not found - /usr/local/lib/ruby/gems/1.8/gems/eventmachine-0.12.8/lib/rubyeventmachine.so (LoadError)
        from -e:1
$ ruby -v
ruby 1.8.7 (2008-06-20 patchlevel 22) [sparc-solaris2.10]
$ gem --version
1.3.5
$ uname -a
SunOS poller01 5.10 Generic_137111-02 sun4u sparc SUNW,Sun-Fire-V440 Solaris

g++ -version ?


$ g++ -v
Reading specs from /usr/local/lib/gcc/sparc-sun-solaris2.10/3.4.6/specs
Configured with: ../configure --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld --enable-shared --enable-languages=c,c++,f77
Thread model: posix
gcc version 3.4.6

$ g++ -dumpspecs -dumpversion -dumpmachine
*asm:
%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Wa,*:%*} -s %{fpic|fpie|fPIC|fPIE:-K PIC} %(asm_cpu) 

*asm_debug:


*asm_final:


*asm_options:
%a %Y %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O}

*invoke_as:
%{!S:-o %|.s |
 as %(asm_options) %|.s %A }

*cpp:
%(cpp_cpu) %(cpp_arch) %(cpp_endian) %(cpp_subtarget)

*cpp_options:
%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w} %{f*} %{g*:%{!g0:%{!fno-working-directory:-fworking-directory}}} %{O*} %{undef}

*cpp_debug_options:
%{d*}

*cpp_unique_options:
%{C|CC:%{!E:%eGCC does not support -C or -CC without -E}} %{!Q:-quiet} %{nostdinc*} %{C} %{CC} %{v} %{I*} %{P} %I %{MD:-MD %{!o:%b.d}%{o*:%.d%*}} %{MMD:-MMD %{!o:%b.d}%{o*:%.d%*}} %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*} %{!E:%{!M:%{!MM:%{MD|MMD:%{o*:-MQ %*}}}}} %{remap} %{g3:-dD} %{H} %C %{D*&U*&A*} %{i*} %Z %i %{E|M|MM:%W{o*}}

*trad_capable_cpp:
cc1 -E %{traditional|ftraditional|traditional-cpp:-traditional-cpp}

*cc1:
%{sun4:} %{target:} %{mcypress:-mcpu=cypress} %{msparclite:-mcpu=sparclite} %{mf930:-mcpu=f930} %{mf934:-mcpu=f934} %{mv8:-mcpu=v8} %{msupersparc:-mcpu=supersparc} %{m32:%{m64:%emay not use both -m32 and -m64}} %{m64:-mptr64 -mstack-bias -mno-v8plus   %{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8*:%{!msupersparc:-mcpu=v9}}}}}}}} 

*cc1_options:
%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}} %1 %{!Q:-quiet} -dumpbase %B %{d*} %{m*} %{a*} %{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}%{!c:%{!S:-auxbase %b}} %{g*} %{O*} %{W*&pedantic*} %{w} %{std*&ansi&trigraphs} %{v:-version} %{pg:-p} %{p} %{f*} %{undef} %{Qn:-fno-ident} %{--help:--help} %{--target-help:--target-help} %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}} %{fsyntax-only:-o %j} %{-param*}

*cc1plus:


*link_gcc_c_sequence:
%G %L %G %L

*endfile:
%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s}    crtend.o%s crtn.o%s

*link:
%{h*} %{v:-V}    %{b} %{Wl,*:%*}    %{static:-dn -Bstatic}    %{shared:-G -dy %{!mimpure-text:-z text}}    %{symbolic:-Bsymbolic -G -dy -z text}    %(link_arch)    %{Qy:} %{!Qn:-Qy}

*lib:
%{compat-bsd:-lucb -lsocket -lnsl -lelf -laio}    %{!shared:     %{!symbolic:       %{pthreads:-lpthread}        %{!pthreads:%{threads:-lthread}}        %{p|pg:-ldl} -lc}}

*libgcc:
%{static|static-libgcc:-lgcc -lgcc_eh}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc:-lgcc -lgcc_eh}%{shared-libgcc:-lgcc_s%M -lgcc}}%{shared:-lgcc_s%M}}}

*startfile:
%{!shared:                       %{!symbolic:                     %{p:mcrt1.o%s}                           %{!p:                            %{pg:gcrt1.o%s gmon.o%s}                             %{!pg:crt1.o%s}}}}                     crti.o%s %(startfile_arch)                      crtbegin.o%s

*switches_need_spaces:


*cross_compile:
0

*version:
3.4.6

*multilib:
. !m32 !m64;sparcv7:. m32 !m64;sparcv9:sparcv9 !m32 m64;

*multilib_defaults:
m32

*multilib_extra:


*multilib_matches:
m32 m32;m64 m64;

*multilib_exclusions:


*multilib_options:
m32/m64

*linker:
collect2

*link_libgcc:
%D

*md_exec_prefix:
/usr/ccs/bin/

*md_startfile_prefix:
/usr/ccs/lib/

*md_startfile_prefix_1:


*startfile_prefix_spec:


*sysroot_suffix_spec:


*sysroot_hdrs_suffix_spec:


*cpp_cpu:
%{mcypress:} %{msparclite|mf930|mf934:-D__sparclite__} %{mv8:%{!m64:-D__sparcv8}} %{msupersparc:-D__supersparc__ %{!m64:-D__sparcv8}} %{mcpu=sparclet|mcpu=tsc701:-D__sparclet__} %{mcpu=sparclite|mcpu-f930|mcpu=f934:-D__sparclite__} %{mcpu=v8:%{!m64:-D__sparcv8}} %{mcpu=supersparc:-D__supersparc__ %{!m64:-D__sparcv8}} %{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3:%{!m64:-D__sparcv8}} %{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(cpp_cpu_default)}}}}}}} 

*cpp_cpu_default:
%{m64:} %{!m64:} 

*cpp_arch32:


*cpp_arch64:
-D__arch64__ -D__sparcv9

*cpp_arch_default:


*cpp_arch:
%{m32:%(cpp_arch32)} %{m64:%(cpp_arch64)} %{!m32:%{!m64:%(cpp_arch_default)}} 

*cpp_endian:
%{mlittle-endian:-D__LITTLE_ENDIAN__} %{mlittle-endian-data:-D__LITTLE_ENDIAN_DATA__}

*cpp_subtarget:
%{pthreads:-D_REENTRANT -D_PTHREADS} %{!pthreads:%{threads:-D_REENTRANT -D_SOLARIS_THREADS}} %{compat-bsd:-iwithprefixbefore ucbinclude -I/usr/ucbinclude} 

*asm_cpu:
%{mcpu=v9:%{!m64:-xarch=v8plus}%{m64:-xarch=v9}} %{mcpu=ultrasparc:%{!m64:-xarch=v8plusa}%{m64:-xarch=v9a}} %{mcpu=ultrasparc3:%{!m64:-xarch=v8plusb}%{m64:-xarch=v9b}} %{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:%{!m64:-xarch=v8}%{m64:-xarch=v9}}}}} %{!mcpu*:%(asm_cpu_default)} 

*asm_cpu_default:
%{m64:-xarch=v9} %{!m64:} 

*asm_arch32:


*asm_arch64:


*asm_relax:


*asm_arch_default:


*asm_arch:


*startfile_arch:
%{ansi:values-Xc.o%s}                       %{!ansi:values-Xa.o%s}

*link_arch32:
%{G:-G}    %{YP,*}    %{R*}    %{compat-bsd:      %{!YP,*:%{p|pg:-Y P,/usr/ucblib:/usr/ccs/lib/libp:/usr/lib/libp:/usr/ccs/lib:/usr/lib}              %{!p:%{!pg:-Y P,/usr/ucblib:/usr/ccs/lib:/usr/lib}}}              -R /usr/ucblib}    %{!compat-bsd:      %{!YP,*:%{p|pg:-Y P,/usr/ccs/lib/libp:/usr/lib/libp:/usr/ccs/lib:/usr/lib}              %{!p:%{!pg:-Y P,/usr/ccs/lib:/usr/lib}}}}

*link_arch64:
%{mcmodel=medlow:-M /usr/lib/ld/sparcv9/map.below4G}    %{G:-G}    %{YP,*}    %{R*}    %{compat-bsd:      %{!YP,*:%{p|pg:-Y P,/usr/ucblib/sparcv9:/usr/lib/libp/sparcv9:/usr/lib/sparcv9}        %{!p:%{!pg:-Y P,/usr/ucblib/sparcv9:/usr/lib/sparcv9}}}      -R /usr/ucblib/sparcv9}    %{!compat-bsd:      %{!YP,*:%{p|pg:-Y P,/usr/lib/libp/sparcv9:/usr/lib/sparcv9}        %{!p:%{!pg:-Y P,/usr/lib/sparcv9}}}}

*link_arch_default:
%{G:-G}    %{YP,*}    %{R*}    %{compat-bsd:      %{!YP,*:%{p|pg:-Y P,/usr/ucblib:/usr/ccs/lib/libp:/usr/lib/libp:/usr/ccs/lib:/usr/lib}              %{!p:%{!pg:-Y P,/usr/ucblib:/usr/ccs/lib:/usr/lib}}}              -R /usr/ucblib}    %{!compat-bsd:      %{!YP,*:%{p|pg:-Y P,/usr/ccs/lib/libp:/usr/lib/libp:/usr/ccs/lib:/usr/lib}              %{!p:%{!pg:-Y P,/usr/ccs/lib:/usr/lib}}}}

*link_arch:
%{m32:%(link_arch32)} %{m64:%(link_arch64)} %{!m32:%{!m64:%(link_arch_default)}} 

*link_command:
%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S:    %(linker) %l %{pie:} %X %{o*} %{A} %{d} %{e*} %{m} %{N} %{n} %{r}    %{s} %{t} %{u*} %{x} %{z} %{Z} %{!A:%{!nostdlib:%{!nostartfiles:%S}}}    %{static:} %{L*} %(link_libgcc) %o %{fprofile-arcs|fprofile-generate:-lgcov}    %{!nostdlib:%{!nodefaultlibs:%(link_gcc_c_sequence)}}    %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} }}}}}}

Interesting.. any chance you can update gcc? Can you try editing the makefile so it links with -lstdc++ and see if that fixes the missing symbol?

Unfortunately I cannot update gcc (this is the latest version available from sunfreeware.com for this platform). Which file would you like me to edit specifically? There's no Makefile so I presume it must be something that forms part of the ruby makefile generation subsystem.

if I clone the git project and try to build it manually I get he following output: http://pastie.org/659872

Alright can you try the following:

git clone git://github.com/eventmachine/eventmachine.git
cd eventmachine
wget http://pastie.org/659901.txt
patch -p1 < 659901.txt
cd ext
ruby extconf.rb
make
ruby -I. -e' require "rubyeventmachine" '

I think this will cause the _ZNSs4_Rep20_S_empty_rep_storageE error from before. If so, can you try:

rm rubyeventmachine.so
make LOCAL_LIBS="-lstdc++"
ruby -I. -e' require "rubyeventmachine" '

The first make fails with the following: http://pastie.org/660136

rubyeventmachine.so was never created but I did also try the second make with the environment variable and that also failed in a similar way (as can be seen in the same pastie).

Ok, try this new patch instead:

cd eventmachine/ext
git checkout .
wget http://pastie.org/660173.txt
patch -p1 < 660173.txt
ruby extconf.rb
make
ruby -I. -e' require "rubyeventmachine" '

and if that doesn't work:

rm rubyeventmachine.so
make LOCAL_LIBS="-lstdc++"
ruby -I. -e' require "rubyeventmachine" '

The patch seemed to do the trick and everything builds fine and I can require rubyeventmachine.so without any issues.

The machine in question must have some deeper problems though as I am unable now to install (gem install just hangs without any output even when I specify -V) certain gems (tmm1-amqp) while others (snmp, rake, etc.) install without a hitch.

I'll have to get to the botom of this first before I am able to once again run the primes.rb test to confirm everything is operation on this platform.

Thanks for your help so far.

Ok, so rubyeventmachine worked even without the LOCAL_LIBS, or was that required? I'll update the gem accordingly.

That's correct, LOCAL_LIBS was not required.

I have fixed the issue mentioned (stupid sudo/proxy environment variable bug) and the prime.rb test and my own service based on eventmachine/amqp is working perfectly.

Thanks again for all the help.

Sounds like latest em gem worked.

Correct.