Skip to content

LoadError: undefined symbol: __libc_single_threaded #346

Open
@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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions