# Ruby 1.8.4 on SUSE 10.0 howto

**URL:** <https://www.ruby-forum.com/t/ruby-1-8-4-on-suse-10-0-howto/93580>\
**Category:** Rails\
**Created:** [April 4, 2006, 10:37pm UTC](https://www.ruby-forum.com/t/ruby-1-8-4-on-suse-10-0-howto/93580 "2006-04-04T22:37:24Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![afg](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ecc23a/32.png) [@afg](https://www.ruby-forum.com/u/afg)\
**Post date:** [April 4, 2006, 10:37pm UTC](https://www.ruby-forum.com/t/ruby-1-8-4-on-suse-10-0-howto/93580/1 "2006-04-04T22:37:24Z")

</div>

All,

I just installed ruby 1.8.4 on my SUSE 10.0 box. It was slightly  
convoluted so I thought I would post the solution here.

Once this runs for a day or so I will try upgrading my rails to 1.1

=== Ruby 1.8.4 on SUSE 10.0 Howto

I downloaded the src.rpm from  
[http://mirrors.kernel.org/opensuse/distribution/SL-OSS-factory/inst-source/suse/src/ruby-1.8.4-9.src.rpm](http://mirrors.kernel.org/opensuse/distribution/SL-OSS-factory/inst-source/suse/src/ruby-1.8.4-9.src.rpm)

Then I installed it with “rpm -i ruby-1.8.4-9.src.rpm”

Then I went to /usr/src/packages/SPECS and made the below edits

# diff ruby.spec.orig ruby.spec

28d27  
\< Patch2: ruby-1.8.4-no-eaccess.diff  
181d179  
\< %patch2

I then compiled up the rpm via “rpmbuild -bb ruby.spec”

I then went to the /usr/src/packages/RPMS/i586 directory and installed  
the all the various 1.8.4 rpms.

HTH  
Greg

–  
Greg F.  
The Norcross Group  
Forensics for the 21st Century

---

<div class="post-metadata">

**Author:** ![afg](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ecc23a/32.png) [@afg](https://www.ruby-forum.com/u/afg)\
**Post date:** [April 5, 2006, 1:18am UTC](https://www.ruby-forum.com/t/ruby-1-8-4-on-suse-10-0-howto/93580/2 "2006-04-05T01:18:24Z")

</div>

Greg F. wrote:

> Then I went to /usr/src/packages/SPECS and made the below edits

Could you explain why that was needed?

---

<div class="post-metadata">

**Author:** ![afg](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ecc23a/32.png) [@afg](https://www.ruby-forum.com/u/afg)\
**Post date:** [April 5, 2006, 3:08pm UTC](https://www.ruby-forum.com/t/ruby-1-8-4-on-suse-10-0-howto/93580/3 "2006-04-05T15:08:18Z")

</div>

On 4/4/06, David M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Greg F. wrote:
> 
> > Then I went to /usr/src/packages/SPECS and made the below edits
> 
> Could you explain why that was needed?

I could not find a rpm specifically for SUSE 10.0, so I used the  
.src.rpm from the SUSE 10.1 Beta and compiled from scratch.

When I tried to compile it with the standard SUSE 10.1 specfile I got  
an linking error of “eaccess” not defined.

I found that the ruby source file “file.c” eaccess was defined, but  
the definition was ifdef’ed out.

Surprisingly the ifdef was not in the basic source, but was being  
inserted by a patch (ruby-1.8.4-no-eaccess.diff) that was invoked by  
the spec file.

My spec file edit was to stop the offending patch from being applied.

Thus, when I did the compile the Ruby source had eaccess() defined and  
it linked fine.

I can post the offending SUSE patch if you want, but I assume it works  
fine with the SUSE 10.1 Beta.

## Greg

Greg F.  
The Norcross Group  
Forensics for the 21st Century

---

<div class="post-metadata">

**Author:** ![afg](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ecc23a/32.png) [@afg](https://www.ruby-forum.com/u/afg)\
**Post date:** [April 5, 2006, 8:21pm UTC](https://www.ruby-forum.com/t/ruby-1-8-4-on-suse-10-0-howto/93580/4 "2006-04-05T20:21:07Z")

</div>

The other option, which I choose, is to just compile from source  
(probably a better solution than using unsupported RPMs).

Bob S.  
[http://www.railtie.net/](http://www.railtie.net/)

---

<div class="post-metadata">

**Author:** ![afg](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/ecc23a/32.png) [@afg](https://www.ruby-forum.com/u/afg)\
**Post date:** [April 5, 2006, 10:02pm UTC](https://www.ruby-forum.com/t/ruby-1-8-4-on-suse-10-0-howto/93580/5 "2006-04-05T22:02:20Z")

</div>

On 4/5/06, Robert S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> The other option, which I choose, is to just compile from source  
> (probably a better solution than using unsupported RPMs).
> 
> Bob S.  
> [http://www.railtie.net/](http://www.railtie.net/)

I would not call them unsupported. Just not supported for use  
explicitly on SUSE 10.0

I got the source rpms I used from the SUSE factory (ie opensuse).  
Although not part of the an official release, I believe they carry the  
same validity as a typical Fedora rpm.

The issue I had was with an update of libc between the 5 month old  
SUSE 10.0 and what is currently in the SUSE factory. In their latest  
spec file SUSE apparently applies a patch to make the ruby source  
compatible with their latest libc. Unfortunately, that same patch  
broke compatibility with the older SUSE 10.0 libc.

So from that perspective, going with vanilla source was better. OTOH,  
the SUSE spec file applies a few other patches to the ruby source. I  
don’t know what they do, but as a SUSE user it feels safer to compile  
source code that has been thru the SUSE QA and interoperability  
testing.

## Greg

Greg F.  
The Norcross Group  
Forensics for the 21st Century
