[comp.windows.interviews] problem making 3.0 beta

nishio@kuis.kyoto-u.ac.jp (Nishio `Cchwitz' Shuichi) (04/18/91)

I have just compiled 3.0 beta. However, I got some problems.

1. I couldn't link ibuild, lacking _waitpid. Is this something new to
  SunOS 4.1? 

2. After I did "make install", when I try to execute commands such as
  doc, I got the following message :

	ld.so: libOS.so.3: not found 

   They ran all right in the source tree, so I think this has
  something to do with the dynamic linking, but unfortunately I have
  no idea what to do.

3. And finally, when I run doc on my SparcStation Console, it appears
  with black-background and white-letters. Is this the right way?

I am working on a SparcStation with SunOS 4.0.3, using AT&T C++ 2.0 .

Thanks for any help.


--nishio

mohr@i90s1.ira.uka.de (Thomas Mohr) (04/18/91)

I have installed 3.0-beta myself ( SUN Sparc, b/w, SUN OS 4.1, AT&T 2.0 ). 
All went well, except 2 problems:

1) src/lib/IV-look/filebrowser.c : line 114: two setgid's with c linkage
                                   line 117: two setuid's with c linkage
   I fixed this by commenting out "#include "osfcn.h" (line 33).
   Maybe this error occured due to our C++ installation.

2) >3. And finally, when I run doc on my SparcStation Console, it appears
   >  with black-background and white-letters. Is this the right way?
   Same with me, but _each program (idraw, doc, dclock...). What's wrong ?


A HINT FOR Nishio `Cchwitz' Shuichi concerning point 2:
>2. After I did "make install", when I try to execute commands such as
>  doc, I got the following message :
>
>	ld.so: libOS.so.3: not found 

I guess Your environment variable $LD_LIBRARY_PATH should be set 
to the lib directory of the beta release. Seems as if it is still
the old path.

------------------------------------------
Thomas Mohr         mohr@i90fs1.ira.uka.de
------------------------------------------
Disclaimer:  That which you read is not necessarily the opinion of the uni,
             the police dept., Chief of Detective Staff Brown, Planet
             Spaceball, Starfleet Command, or the Bildzeitung.

echarne@ics.uci.edu (Eli B. Charne) (04/19/91)

In <NISHIO.91Apr18054445@mizar.kuis.kyoto-u.ac.jp> nishio@kuis.kyoto-u.ac.jp (Nishio `Cchwitz' Shuichi) writes:


>I have just compiled 3.0 beta. However, I got some problems.

>1. I couldn't link ibuild, lacking _waitpid. Is this something new to
>  SunOS 4.1? 

>2. After I did "make install", when I try to execute commands such as
>  doc, I got the following message :

>	ld.so: libOS.so.3: not found 

>   They ran all right in the source tree, so I think this has
>  something to do with the dynamic linking, but unfortunately I have
>  no idea what to do.

  This is an annoying (but I suppose reasonable) problem with dynamically
  linked libraries in SunOS.

  If you run ldd on the binaries in the source dir, you will see that they are
  linked with relative paths.  You should find that moving the executables
  back into the dir they were compiled in (or for that matter any directory
  that deep in the tree) will make them work again.

  What I did was re-compile the 'bin' directory using "installed" path names
  instead of the relative path names.  (After installing everything else, I
  added:

	  #ifndef UseInstalled
	  #define UseInstalled YES
	  #endif
  
  to the local.def configuration file, and re-made the Makefiles for the bin
  directory using this.  (You also have to give path names to the installed
  binaries in the local.def config file)  This makes the binaries dynamically
  link with the full path name, so you can put the binaries wherever you like.

  If you have plenty of disk space, you might even want to link the binaries
  staticlly (ad -Bstatic to the linker flags)...


>3. And finally, when I run doc on my SparcStation Console, it appears
>  with black-background and white-letters. Is this the right way?

  Hmm, mine comes up black on white (unless I do doc -rv).  It is quite a bit
  different than the alpha version was though.  Namely, it only has a File and
  Edit menu...

>I am working on a SparcStation with SunOS 4.0.3, using AT&T C++ 2.0 .

  I'm running on a Sparc running 4.1

-- 
      echarne@ics.uci.edu     // \\    ``To understand recursion you 
       echarne@uci.bitnet \\ //   \\ //  need to understand recursion.''
echarne@nrtc.northrop.com  \X/     \X/   --Andrew Koenig, 2nd Usenix C++ conf.

interran@lurch.Stanford.EDU (John Interrante) (04/19/91)

In article <NISHIO.91Apr18054445@mizar.kuis.kyoto-u.ac.jp>
nishio@kuis.kyoto-u.ac.jp (Nishio `Cchwitz' Shuichi) writes:

   1. I couldn't link ibuild, lacking _waitpid. Is this something new to
     SunOS 4.1? 

Could be.  I think there's a workaround, but I'm not familiar with it.
Somebody else will post it, I'm sure.

   3. And finally, when I run doc on my SparcStation Console, it appears
     with black-background and white-letters. Is this the right way?

See the patch Mark Linton posted for monochrome Suns in article
<1991Apr19.070715.5452@odin.corp.sgi.com>.
-- 
John Interrante / interran@lurch.stanford.edu

interran@lurch.Stanford.EDU (John Interrante) (04/20/91)

In article <280DD361.27063@ics.uci.edu> echarne@ics.uci.edu
(Eli B. Charne) writes:
   This is an annoying (but I suppose reasonable) problem with dynamically
   linked libraries in SunOS.

   If you run ldd on the binaries in the source dir, you will see that they are
   linked with relative paths.  You should find that moving the executables
   back into the dir they were compiled in (or for that matter any directory
   that deep in the tree) will make them work again.

   What I did was re-compile the 'bin' directory using "installed" path names
   instead of the relative path names.  (After installing everything else, I
   added:

	   #ifndef UseInstalled
	   #define UseInstalled YES
	   #endif

   to the local.def configuration file, and re-made the Makefiles for the bin
   directory using this.  (You also have to give path names to the installed
   binaries in the local.def config file)  This makes the binaries dynamically
   link with the full path name, so you can put the binaries wherever you like.

This is not necessary.  Yes, the the binaries are linked with relative
paths, but if you pay close attention to the command line used to link
the binaries, you'll see that the very last -L specifies an absolute
directory (ABSLIBDIR).  If you gave the correct path name to LibDir in
the local.def config file *before* making World, the binaries will be
linked with the correct absolute path name needed to find the
installed libraries.  When you install the binaries and libraries, the
the relative path names will no longer work as you mentioned but the
absolute path name *will* work.
-- 
John Interrante / interran@lurch.stanford.edu

nishio@kuis.kyoto-u.ac.jp (Nishio `Cchwitz' Shuichi) (04/21/91)

Thank you to all who responded. Here is the summary to my problems.


In article <NISHIO.91Apr18054445@mizar.kuis.kyoto-u.ac.jp> nishio@kuis.kyoto-u.ac.jp (Nishio `Cchwitz' Shuichi) writes:

>   1. I couldn't link ibuild, lacking _waitpid. Is this something new to
>     SunOS 4.1? 

It seems to be. I overrode this by using wait4(), instead of waitpid.
I am not sure if this was a right solution, but anyway ibuild seems to 
be working fine.



>   2. After I did "make install", when I try to execute commands such as
>     doc, I got the following message :
>
>	   ld.so: libOS.so.3: not found 

After I set the directory definitions in local.def file, it went all right.


   3. And finally, when I run doc on my SparcStation Console, it appears
     with black-background and white-letters. Is this the right way?

Mr. Linton posted a patch on this.



--nishio