Skip to content

LoadError: undefined symbol: __libc_single_threaded #346

@gbp

Description

@gbp

Since 0.18.0 we're seeing this load error and have reproduced on a clean Debian Bullseye install.

$ docker run -it ruby:3.3-bullseye /bin/bash
...
root@794a95a98f8c:/# gem install mini_racer
...
Successfully installed mini_racer-0.18.0
...
root@794a95a98f8c:/# irb
irb(main):001> require 'mini_racer'
/usr/local/bundle/gems/mini_racer-0.18.0/lib/mini_racer.rb:22:in `load': /usr/local/bundle/extensions/aarch64-linux/3.3.0/mini_racer-0.18.0/mini_racer_extension.so: undefined symbol: __libc_single_threaded (LoadError)
	from /usr/local/bundle/gems/mini_racer-0.18.0/lib/mini_racer.rb:22:in `<top (required)>'
	from <internal:/usr/local/lib/ruby/3.3.0/rubygems/core_ext/kernel_require.rb>:141:in `require'
	from <internal:/usr/local/lib/ruby/3.3.0/rubygems/core_ext/kernel_require.rb>:141:in `rescue in require'
	from <internal:/usr/local/lib/ruby/3.3.0/rubygems/core_ext/kernel_require.rb>:135:in `require'
	from (irb):1:in `<main>'
	from <internal:kernel>:187:in `loop'
	from /usr/local/lib/ruby/gems/3.3.0/gems/irb-1.13.1/exe/irb:9:in `<top (required)>'
	from /usr/local/bin/irb:25:in `load'
	from /usr/local/bin/irb:25:in `<main>'
<internal:/usr/local/lib/ruby/3.3.0/rubygems/core_ext/kernel_require.rb>:136:in `require': cannot load such file -- mini_racer (LoadError)
	from <internal:/usr/local/lib/ruby/3.3.0/rubygems/core_ext/kernel_require.rb>:136:in `require'
	from (irb):1:in `<main>'
	from /usr/local/lib/ruby/3.3.0/irb/workspace.rb:121:in `eval'
	from /usr/local/lib/ruby/3.3.0/irb/workspace.rb:121:in `evaluate'
	from /usr/local/lib/ruby/3.3.0/irb/context.rb:633:in `evaluate_expression'
	from /usr/local/lib/ruby/3.3.0/irb/context.rb:600:in `evaluate'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1049:in `block (2 levels) in eval_input'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1380:in `signal_status'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1041:in `block in eval_input'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1120:in `block in each_top_level_statement'
	from <internal:kernel>:187:in `loop'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1117:in `each_top_level_statement'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1040:in `eval_input'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1021:in `block in run'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1020:in `catch'
	from /usr/local/lib/ruby/3.3.0/irb.rb:1020:in `run'
	... 4 levels...

This works fine for Bookworm.

$ docker run -it ruby:3.3-bookworm /bin/bash
...
root@b67ce8166799:/# gem install mini_racer
...
Successfully installed mini_racer-0.18.0
...
root@b67ce8166799:/# irb
irb(main):001> require 'mini_racer'
=> true

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions