Ruby install question

Hi:

I have asked this question before, long ago, but did not
get the answer I wanted. :slight_smile:

I am trying to install Ruby at work. We have about 20
sites around the world. Our method is to create a bindist
such that the individual sites can simply gunzip and untar
a file to get a valid installation. This is done because
not all sites have access to the necessary compilers and such
to do a make.

My original solution was to locally do:

./configure --prefix=/path_to_ruby
make
cd …
tar czvf ruby.tgz ruby

to get a ruby.tgz bindist. Then each site just does:

tar xzvf ruby.tgz
cd ruby
make install

The problem is that the --prefix for each site is not
guaranteed to be the same.

How can I change the default lib path after make, but
before make install? Or, how do I create a binary install
of ruby that can be installed into any arbitrary directory?

Note, I know all about using environment variables
and modifying the lib path during runtime. What I
want to prevent is the dangling lib path generated
by the original configure.

Thanks

···


Jim Freeze

Egotist, n.:
A person of low taste, more interested in himself than me.
– Ambrose Bierce, “The Devil’s Dictionary”

A lateral answer which is probably not what you want: but if you configure
it to install in /opt/ruby (say), then before installation on the target
machine you can make a symlink from /opt/ruby to wherever it should
permanently live.

Regards,

Brian.

···

On Tue, Jun 03, 2003 at 10:59:26PM +0900, Jim Freeze wrote:

My original solution was to locally do:

./configure --prefix=/path_to_ruby
make
cd …
tar czvf ruby.tgz ruby

to get a ruby.tgz bindist. Then each site just does:

tar xzvf ruby.tgz
cd ruby
make install

The problem is that the --prefix for each site is not
guaranteed to be the same.

My initial knee jerk response is that /opt/ruby is not guaranteed to exist.
But, I’m not a sun expert. Will /opt always exist?

···

On Tuesday, 3 June 2003 at 23:05:17 +0900, Brian Candler wrote:

On Tue, Jun 03, 2003 at 10:59:26PM +0900, Jim Freeze wrote:

My original solution was to locally do:

./configure --prefix=/path_to_ruby
make
cd …
tar czvf ruby.tgz ruby

to get a ruby.tgz bindist. Then each site just does:

tar xzvf ruby.tgz
cd ruby
make install

The problem is that the --prefix for each site is not
guaranteed to be the same.

A lateral answer which is probably not what you want: but if you configure
it to install in /opt/ruby (say), then before installation on the target
machine you can make a symlink from /opt/ruby to wherever it should
permanently live.


Jim Freeze

Call it /foo/bar if you like. Just on the target machine, create it as a
symlink to where you want it (i.e. mkdir /foo; mkdir /path/to/targetdir;
ln -s /path/to/targetdir /foo/bar) before unpacking your tarball.

Regards,

Brian.

···

On Tue, Jun 03, 2003 at 11:51:51PM +0900, Jim Freeze wrote:

A lateral answer which is probably not what you want: but if you configure
it to install in /opt/ruby (say), then before installation on the target
machine you can make a symlink from /opt/ruby to wherever it should
permanently live.

My initial knee jerk response is that /opt/ruby is not guaranteed to exist.