# Solaris Install: Non-standard location

**URL:** <https://www.ruby-forum.com/t/solaris-install-non-standard-location/94829>\
**Category:** Ruby\
**Created:** [May 15, 2006, 11:58pm UTC](https://www.ruby-forum.com/t/solaris-install-non-standard-location/94829 "2006-05-15T23:58:50Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![xmg-eric](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/x/f04885/32.png) [@xmg-eric](https://www.ruby-forum.com/u/xmg-eric)\
**Post date:** [May 15, 2006, 11:58pm UTC](https://www.ruby-forum.com/t/solaris-install-non-standard-location/94829/1 "2006-05-15T23:58:50Z")

</div>

(Resending after a bit more refactoring. Guidance  
would be most appreciated.)

Were I able to install at the default location,  
things would be golden. Unfortunately, that’s  
not an option.

My first attempt at installing failed horribly.  
(Couldn’t access GetoptLong, for instance, because  
the site variables are pointing to the default location.)

I’m gearing up to try again.

There seem to be two ways to do it:

- Do things manually
- Specify command lone options when running configure

## OPTION 1: Do things manually

Is this the right way to go?

The process seems to be  
a) Run configure to create config.h and the Makefile.  
b) Edit config.h to set the environment variables.  
(Yes? Not clear from the installation instructions)  
c) Build, specifying the destination options:  
% make install prefix=/foo

I did (a) and © last time, but not (b). The result was  
a “successful” build. But running ruby with the debug  
option showed that Ruby’s internal variables matched  
the values contained in config.h:

#define RUBY\_LIB “/usr/local/lib/ruby/1.8”  
#define RUBY\_SITE\_LIB “/usr/local/lib/ruby/site\_ruby”  
#define RUBY\_SITE\_LIB2 “/usr/local/lib/ruby/site\_ruby/1.8”  
#define RUBY\_PLATFORM “sparc-solaris2.9”  
#define RUBY\_ARCHLIB  
“/usr/local/lib/ruby/1.8/sparc-solaris2.9”  
#define RUBY\_SITE\_ARCHLIB  
“/usr/local/lib/ruby/site\_ruby/1.8/sparc-solaris2.9”

Questions:

- Should I change those from “/usr/local/lib” to my  
target destination before running make?

- If I do that, is prefix=/myDestinationPath still  
needed when running make?

- What’s the difference between LIB, SITE\_LIB, and  
SITE\_LIB2 ?

## OPTION 2: Specify command line options during configure

This seems like it should be the right way to go, but  
there are /many/ options (below), and only one of them  
looks to be at all relevant:

–with-sitedir=DIR site libraries in DIR  
Default: PREFIX/lib/ruby/site\_ruby

But I set PREFIX when I ran make last time. So it’s  
not clear that changing that one setting would do  
much good.

I tried doing the build without the special instructions,  
and ran into an error when the script tried to do this:

```
      mkdir -p -m 755 /usr/local/lib

```

That fails, here. But there is no option that looks useful.  
They all default to PREFIX/… and I set that on makefile  
command line.

Options  
…  
Fine tuning of the installation directories:  
–bindir=DIR user executables [EPREFIX/bin]  
–sbindir=DIR system admin executables  
[EPREFIX/sbin]  
–libexecdir=DIR program executables [EPREFIX/libexec]  
–datadir=DIR read-only architecture-independent  
data  
[PREFIX/share]  
–sysconfdir=DIR read-only single-machine data  
[PREFIX/etc]  
–sharedstatedir=DIR modifiable  
architecture-independent data  
[PREFIX/com]  
–localstatedir=DIR modifiable single-machine data  
[PREFIX/var]  
–libdir=DIR object code libraries [EPREFIX/lib]  
–includedir=DIR C header files [PREFIX/include]  
–oldincludedir=DIR C header files for non-gcc  
[/usr/include]  
–infodir=DIR info documentation [PREFIX/info]  
–mandir=DIR man documentation [PREFIX/man]

Program names:  
–program-prefix=PREFIX prepend PREFIX to installed  
program names  
–program-suffix=SUFFIX append SUFFIX to installed  
program names  
–program-transform-name=PROGRAM  
run sed PROGRAM on installed  
program names

System types:  
–build=BUILD configure for building on BUILD [guessed]  
–host=HOST cross-compile to build programs to run  
on HOST  
[BUILD]  
–target=TARGET configure for building compilers for  
TARGET [HOST]

Optional Features:  
–disable-FEATURE do not include FEATURE  
(same as --enable-FEATURE=no)  
–enable-FEATURE[=ARG] include FEATURE [ARG=yes]  
–enable-frame-address use GCC \_\_builtin\_frame\_address().  
–disable-largefile omit support for large files  
–enable-pthread use pthread library.  
–enable-setreuid use setreuid()/setregid()  
according to need  
even if obsolete.  
–disable-rpath embed run path into extension  
libraries.  
–enable-shared build a shared library for Ruby.  
–enable-install-doc build and install rdoc indexes  
during install

Optional Packages:  
–with-PACKAGE[=ARG] use PACKAGE [ARG=yes]  
–without-PACKAGE do not use PACKAGE (same as  
–with-PACKAGE=no)  
–without-gcc never use gcc  
–with-default-kcode=CODE specify default value for $KCODE  
(utf8|euc|sjis|none)  
–with-dln-a-out use dln\_a\_out if possible  
–with-static-linked-ext link external modules statically  
–with-sitedir=DIR site libraries in DIR  
PREFIX/lib/ruby/site\_ruby  
–with-search-path=DIR specify the additional search path  
–with-mantype=TYPE specify man page type; TYPE is one of  
man and doc

Some influential environment variables:  
CC C compiler command  
CFLAGS C compiler flags  
LDFLAGS linker flags, e.g. -L if you have  
libraries in a  
nonstandard directory   
CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have  
headers in a nonstandard directory   
CPP C preprocessor

---

<div class="post-metadata">

**Author:** ![xmg-eric](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/x/f04885/32.png) [@xmg-eric](https://www.ruby-forum.com/u/xmg-eric)\
**Post date:** [May 16, 2006, 12:02am UTC](https://www.ruby-forum.com/t/solaris-install-non-standard-location/94829/2 "2006-05-16T00:02:05Z")

</div>

Whoops. Forget to list messages in threaded  
view, and didn’t realize folks had already  
responded. Kindly disregard the duplicate  
posting.

(Where’s that pullback button…)
