rcairo / rcairo

The Ruby bindings for cairo.
https://rcairo.github.io/
Other
134 stars 31 forks source link

Upgrading cairo to 1.17.6-1 breaks ruby-cairo-1.17.5-6 #74

Closed korikori closed 2 years ago

korikori commented 2 years ago

Hi all, not sure if this bug report is for you, but it's my best guess. Apparently there's a new version of cairo, and it's already been passed on to anyone running Arch. This breaks anything using ruby-cairo and ruby-gtk3 on my system. Example logs:

 kori@tempest  ~  ruby bin/ideapad-perf/ideapad-perf-tray.rb               
<internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require': /usr/lib/ruby/gems/3.0.0/extensions/x86_64-linux/3.0.0/cairo-1.17.5/cairo.so: undefined symbol: cairo_xml_create_for_stream - /usr/lib/ruby/gems/3.0.0/extensions/x86_64-linux/3.0.0/cairo-1.17.5/cairo.so (LoadError)
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/cairo-1.17.5/lib/cairo.rb:54:in `rescue in <top (required)>'
    from /usr/lib/ruby/gems/3.0.0/gems/cairo-1.17.5/lib/cairo.rb:50:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/cairo-gobject-3.4.5/lib/cairo-gobject.rb:17:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/gdk3-3.4.5/lib/gdk3.rb:18:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/gtk3-3.4.5/lib/gtk3.rb:18:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:160:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:160:in `rescue in require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:149:in `require'
    from bin/ideapad-perf/ideapad-perf-tray.rb:2:in `<main>'
<internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- 3.0/cairo.so (LoadError)
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/cairo-1.17.5/lib/cairo.rb:52:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/cairo-gobject-3.4.5/lib/cairo-gobject.rb:17:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/gdk3-3.4.5/lib/gdk3.rb:18:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from /usr/lib/ruby/gems/3.0.0/gems/gtk3-3.4.5/lib/gtk3.rb:18:in `<top (required)>'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:160:in `require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:160:in `rescue in require'
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:149:in `require'
    from bin/ideapad-perf/ideapad-perf-tray.rb:2:in `<main>'
<internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- gtk3 (LoadError)
    from <internal:/usr/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
    from bin/ideapad-perf/ideapad-perf-tray.rb:2:in `<main>'

Additional info:

Steps to reproduce: Upgrade cairo to the latest version and open anything that depends on ruby-gtk3/ruby-cairo.

kou commented 2 years ago

Could you rebuild rcairo?

korikori commented 2 years ago

Thanks - this works! So I guess it report was for the package maintainer after all...