I have to be missing something simple here

I have some code that was written in the Ruby-1.8ish era. However,
the newer versions append the version number to all library/etc
filenames, which is causing problems- for example, “/usr/local/bin/
ruby” no longer exists, it’s “/usr/local/bin/ruby19”. I’d stay with
1.8 but when I try to run the software on the new system I’m trying to
set up (FreeBSD) it complains that gzip library isn’t present.

I know from Googling that zlib was included with Ruby starting with
1.8, so I’m not quite sure what’s going on there. Rather than fiddle
with that, I thought I’d just get a newer version (1.9.1 is the
current for FreeBSD 7.1, IIRC), but then I run into the above
mentioned filename problems.

Am I missing something? Surely it should be more backward compatible
than that… I thought the problem might be that the FreeBSD packages
were broken, but compiling from source results in the same problem.
Should I just set up links or rename everything to the old filenames?
Was there some drastic change in Ruby that necessitated the versions
not commingle? Argh.

Thanks for any input,
Jim

[email protected] wrote:

current for FreeBSD 7.1, IIRC), but then I run into the above
Jim

Jim, I’m competent only to comment on part of your problem. I know this:
If you have Ruby 1.8.x installed, and then also install 1.9.x, the
installation process will keep them separate by appending …1.9 to all
(I HOPE all!) the 1.9 components. That’s what happened on my Kubuntu
Linux OS. What implications this might have for the internals of various
Ruby scripts of which any particular piece of software s composed I can
only conjecture.

I think you may have two Ruby’s installed on your OS. For the present, I
don’t think there’s a realistic alternative to this setup. I’m NOT sure
how best to manage it, however. Still learning.

t.

Tom C., MS MA, LMHC - Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< [email protected] >> (email)
<< TomCloyd.com >> (website)
<< sleightmind.wordpress.com >> (mental health weblog)

On Feb 18, 7:58 pm, Tom C. [email protected] wrote:

with that, I thought I’d just get a newer version (1.9.1 is the
Thanks for any input,
I think you may have two Ruby’s installed on your OS. For the present, I
don’t think there’s a realistic alternative to this setup. I’m NOT sure
how best to manage it, however. Still learning.

t.

Tom-

Thanks for the input. Nope, only one Ruby- I’ve tried it several
different ways. I did notice in the changelog for 1.9.0 that there
are several “severe” incompatible changes, so perhaps that’s why
they’re segregating the versions like that. (I’d love to hear it if
anyone knows!)

For the moment I’m going to fall back to 1.8.0.111 and try to get zlib
working. My other concern is that I don’t know if all the current
extension binding packages (pango, glib2, gtk2, etc etc) are going to
play nicely with it. Sigh. I wouldn’t mind that much except
finding older versions of this stuff can be an immense pain in the
butt, and it’s a crap shoot which versions work together. Hmm, a
compatibility table would be nice…

Thanks again-
Jim

[email protected] wrote:

Was there some drastic change in Ruby that necessitated the versions
Ruby scripts of which any particular piece of software s composed I can
Tom-
play nicely with it. Sigh. I wouldn’t mind that much except
finding older versions of this stuff can be an immense pain in the
butt, and it’s a crap shoot which versions work together. Hmm, a
compatibility table would be nice…

Thanks again-
Jim

Don’t know if this helps or not, but…

I use 1.8.7 for most of my work and everything I needs seems to be
available and working for it. Not so with 9.1.

When I recently reinstalled my kubuntu linux, I found that somehow 9.1
had been installed by something, somehow, without my knowledge. It was
causing me some problems, relative to my 1.8.7 installation. I removed
them both, installed 1.8.7 (from source), got it working, then installed
9.1 from Synaptic package manager. Everything’s working great, other
than that I cannot find everything I need for 9.1, yet. I expect
Libraries will come available over time.

So…you might want to try 1.8.7, after doing some housecleaning.

t.

Tom C., MS MA, LMHC - Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< [email protected] >> (email)
<< TomCloyd.com >> (website)
<< sleightmind.wordpress.com >> (mental health weblog)

unknown wrote:

I have some code that was written in the Ruby-1.8ish era. However,
the newer versions append the version number to all library/etc
filenames, which is causing problems- for example, “/usr/local/bin/
ruby” no longer exists, it’s “/usr/local/bin/ruby19”.

This is a compile-time option: ./configure --program-suffix=19

I’d stay with
1.8 but when I try to run the software on the new system I’m trying to
set up (FreeBSD) it complains that gzip library isn’t present.

If you’re trying to run code written under 1.8, then you definitely need
1.8. There are many differences between 1.8 and 1.9, some minor but many
substantial.

Hence many people need to have both 1.8 and 1.9 installed
simultaneously, and the suffix is one way to achieve this.

I’d argue that 1.8.7 is a third incompatible variant, but let’s not get
into that now :slight_smile: Suffice to say, if your code was written under 1.8,
then you should install a recent 1.8.6.

I know from Googling that zlib was included with Ruby starting with
1.8, so I’m not quite sure what’s going on there.

It is. How are you installing ruby - from ports? Compiling from source?

If compiling from source it should be easy to debug. If the zlib
extension isn’t being build, you’ll find the answer in
ext/zlib/mkmf.log.

I believe zlib is part of FreeBSD base system, so you’ll need to check
what’s happening.

Was there some drastic change in Ruby that necessitated the versions
not commingle? Argh.

Yes :slight_smile: