Subject: Re: Building Pine On Solaris - Compile Time Options Don't Work

From: Mark Crispin <[email-masked]>
Date: Thu, 30 Nov 1995 23:41:28 -0800

On Thu, 30 Nov 1995, Michael J. Weiss wrote:
> First of all, I was not able to find a pre-done option to build for
> Solaris.

It's the "sol" build.

> I am curious why such a seemingly
> popular operating system isn't one of the default supported ones.

Solaris is supported, but we do not use Solaris at our site so we only do
minimal testing.  There are a number of reasons which I would prefer not
to go into.  Let's just say that SUN has not exactly bent over backwards
to encourage us to buy their systems or to develop for their systems.

> Perhaps the process which I went through to compile under this OS has
> something to do with the compile-time options I set in the header not
> taking effect?

Most likely.  It isn't possible to determine from your message what you
did.

-- Mark --

DoD #0105, R90/6 pilot, FAX: (206) 685-4045  ICBM: N 47 39'35" W 122 18'39"
Science does not emerge from voting, party politics, or public debate.

---

From: Carolynn Seeley <[email-masked]>
Date: Fri, 1 Dec 1995 11:45:07 -0500 (EST)

I have just built PINE 3.91 on two of our campus systems that were running
PINE3.89. They are in test mode right now but will be put into production for
our >5000 ids in approximately two weeks.  

The first system:  SUN Sparc 10 with OS  SunOs 4.1.3_U1  
I did a 'build clean' and then 'build sol'  and it built with only a few 
warning messages.

The second system: SUN Sparc 1000 with OS  Sun 5.4 (Solaris 2.5)
I had a few problems with this one. BUT thanks to Ed Greshko 
<[email-masked]> for sharing his info, I found the following three 
steps he mentioned were DEFINITELY required:
1. Make sure that /usr/opt/SUNWspro/bin appears in your path *before* 
/usr/ucb
2. Edit the makefile.sol file in the pine directory and add  -Dconst=  to 
the CFLAGS line
3. Make sure you *unset* the environment variable  LD_LIBRARY_PATH 

I then did a 'build clean' then a 'build sol' and it built . TA DA! :-)

Hope this info helps.

Carolynn

On Thu, 30 Nov 1995, Mark Crispin wrote:

> ...text deleted for brevity

Carolynn Seeley                     email:  [email-masked]
Consultant, Office Systems Support          [email-masked]
PINE Administrator
Computing and Information Services     
McMaster University, ABB-132
------------------------------------------------------------------------------

---

From: Carolynn Seeley <[email-masked]>
Date: Fri, 1 Dec 1995 13:12:33 -0500 (EST)

On Fri, 1 Dec 1995, Carolynn Seeley wrote:

OOOPS  - sorry a typo -  on the first system I did a 'build sun' 

> I then did a 'build clean' then a 'build sol' and it built . TA DA! :-)

-------------------------------------------------------------------------------

---

From: [email-masked] (R. Stewart Ellis)
Date: 2 Dec 95 14:02:56 GMT

>I did a 'build clean' and then 'build sol'  and it built with only a few 

This would seem to be a mistake.  Among other things, it would look for mail
in /var/mail/username instead of /var/spool/mail/username.  I have not built
pine for SunOS for over a year, but there is an option for regular SunOS.

 >The second system: SUN Sparc 1000 with OS  Sun 5.4 (Solaris 2.5)

This is also a mistake.  SunOS 5.x maps to Solaris 2.x on a one-to-one basis
for x, such that SunOS 5.4 equals the OS component of Solaris 2.4 (and the
windowing system is OpenWindows 3.4).

 >1. Make sure that /usr/opt/SUNWspro/bin appears in your path *before* 

/usr/ucb should always be last in the path on Solaris.  The main thing that
people put it in the path early for is to get a bsd style df, but standard
/usr/bin/df has two switches '-tk' that cause it to do the right thing.

 >2. Edit the makefile.sol file in the pine directory and add  -Dconst=  to 

I really do not understand why this was not part of the distribution.  Let's
hope they get it right next time.

 >3. Make sure you *unset* the environment variable  LD_LIBRARY_PATH 

Ideally LD_LIBRARY_PATH should never be set.  All binaries should be linked
with the -R flag set (and the same value as -L) so they can find their
dynamic libs.

A piece of general advice to people who are compiling stuff on Solaris, you
should get the Solaris Porting FAQ at the FAQ place, and hang out on
c.u.solaris.  In general Sun and AT&T did not do a good job with the src
compat stuff when they developed SVR4, plus a lot of interfaces changed.
Now that everyone has gotten most everything ported to the new SVR4
interfaces, Sun is adding some new bsd src compat stuff in Solaris 2.5,
which will break backward compatibility from 2.5 back to 2.4 or 2.3 (no one
should still be running Solaris < 2.3 anymore if they can possibly help it),
so, even though 2.5 will support more of the bsd stuff, people should still
avoid it unless they can guarantee no one will ever try to run the binaries
on Solaris < 2.5.

Get the Solaris Porting FAQ and do a proper SVR4 port of anything that is
not already done.

-- 
  R.Stewart(Stew) Ellis, Assoc.Prof., (Off)810-762-9765   ___________________
  Humanities & Social Science,  GMI Eng.& Mgmt. Inst.    /   _____  ______ 
  Flint, MI 48504      [email-masked]               /        / /  /  / /
  Web admin:  chimera,nn,tin,jove,kermit - free's best!/________/ /  /  / /