sup broken with ruby 2.2?

2,305 views
Skip to first unread message

gui...@netcourrier.com

unread,
Jan 6, 2015, 5:13:26 AM1/6/15
to sup...@googlegroups.com
Hello all,

I updated my system to ruby 2.2 and I can't get sup to work.
At first it didn't work so I figured I needed to recompile it, so I removed and reinstalled it. However, simply typing 'gem install sup' fails with this message:

Fetching: sup-0.20.0.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing sup:
    ERROR: Failed to build gem native extension.

    /usr/bin/ruby mkrf_conf_xapian.rb
xapian: installing xapian-ruby..
xapian: platform specific dependencies..

rake failed, exit code 1

Gem files will remain installed in /home/guiniol/.gem/ruby/2.2.0/gems/sup-0.20.0 for inspection.
Results logged to /home/guiniol/.gem/ruby/2.2.0/extensions/x86_64-linux/2.2.0/sup-0.20.0/gem_make.out


I figured the problem was with xapian, so I tried to first install xapian-ruby and then sup, which works. However, sup doesn't launch. I get this error instead:

/usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- dl/import (LoadError)
    from /usr/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
    from /home/guiniol/.gem/ruby/2.2.0/gems/sup-0.20.0/bin/sup:111:in `<module:Redwood>'
    from /home/guiniol/.gem/ruby/2.2.0/gems/sup-0.20.0/bin/sup:74:in `<top (required)>'
    from /home/guiniol/.gem/ruby/2.2.0/bin/sup:23:in `load'
    from /home/guiniol/.gem/ruby/2.2.0/bin/sup:23:in `<main>'


Has anyone else tried sup with ruby 2.2? Is there anything I can try to get it to work?

Cheers,

Guillaume

Ruthard Baudach

unread,
Jan 11, 2015, 5:33:28 PM1/11/15
to supmua
It hit me, too.

The problem seems to be a deprecated DL module, that is
substituted by Fiddle and removed from Ruby 2.2. (remember the
deprecation notice when sup started?)

Assuming that the API of fiddle is the same as of DL, I replaced 'dl' by
'fiddle' and it seems to work:

Locate your master sup script -- it should live in sup's bin/ directory,
if you installed sup via `gem install` this should be
`$HOME/.gem/ruby/2.2.0/gems/sup-0.20.0/bin/sup` for a current sup and
ruby install

open this file in the editor of your choice.

line 111 has to be changed from

require 'dl/import'

to
require 'fiddle/import'

and line 113 from

extend DL.const_defined?(:Importer) ? DL::Importer : DL::Importable

to

extend Fiddle::Importer


Sorry to Gaute and all developers for not providing a patch, but

a) I'm not really shure this will work, someone should probably skim the
documentation of ruby 2.1.5 dl/import and ruby 2.2.0 fiddle/import
b) I'm still not really acquainted with git.

Best regards,

Ruthard

>== Auszüge aus der Nachricht von gui-gui vom 2015-01-06 11:13:
--

Emails are postcards.
Put them in an envelope,
Sign and encrypt them!

My PGP-Id: 0xAC5AC6C2

Gaute Hope

unread,
Jan 12, 2015, 4:07:16 AM1/12/15
to Ruthard Baudach, supmua
Hi all,

please test/review PR #360:

https://github.com/sup-heliotrope/sup/pull/360

- gaute

Excerpts from Ruthard Baudach's message of January 11, 2015 23:33:
> --
> You received this message because you are subscribed to the Google Groups "The Sup email client" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to supmua+un...@googlegroups.com.
> To post to this group, send email to sup...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/supmua/1421014626-sup-9934%40ruthard-lappi.
> For more options, visit https://groups.google.com/d/optout.
>

Per Andersson

unread,
Jan 12, 2015, 4:05:30 PM1/12/15
to Ruthard Baudach, supmua
You can actually edit the files via the web browser on GitHub.

To do this select a file then click the pen button on the upper right corner
of the file view (right of the raw, blame, history buttons). This will fork the
project and commit your changes if I understood correctly.

Good primers to git is in the documentation

http://git-scm.com/documentation

You can also try it interactively online

https://try.github.io/levels/1/challenges/1


--
Per

Jan Winkelmann

unread,
Mar 4, 2015, 9:37:40 AM3/4/15
to sup...@googlegroups.com, gui...@netcourrier.com
I have the same issue with sup-0.21:

[...]
Building native extensions.  This could take a while...
/usr/bin/ruby mkrf_conf_xapian.rb
xapian: platform specific dependencies..
xapian: installing xapian-ruby..
ERROR:  Error installing sup:
ERROR: Failed to build gem native extension.

    Building has failed. See above output for more information on the failure.
rake failed, exit code 1

The patch posted has been merged before 0.21 so I don't think it helped. I'm on Arch Linux using Ruby 2.2.0.

Did anyone get it to work?

gui...@netcourrier.com

unread,
Mar 4, 2015, 9:51:39 AM3/4/15
to Jan Winkelmann, sup...@googlegroups.com
I get it to install by installing xapian-ruby first and then sup:
gem install xapian-ruby gpgme sup

--
Guillaume


---- Message d'origine ----
De : "Jan Winkelmann" <subway...@gmail.com>
À : sup...@googlegroups.com
Objet : Re: sup broken with ruby 2.2?
Date : 04/03/2015 15:37:40 CET
Copie à : gui...@netcourrier.com
Reply all
Reply to author
Forward
0 new messages