"Fossies" - the Fresh Open Source Software Archive

Member "Tk-804.036/README.SVR4" (15 Nov 2013, 4487 Bytes) of package /linux/misc/Tk-804.036.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 This is what one person had to do to get Tk working on some
    2 SVR4 machines.
    3 
    4 I would appreciate knowing if this is generic to SVR4,
    5 or if these machines are particularly obscure.
    6 
    7 Nick.
    8 
    9 From  owner-ptk@WPI.EDU  Thu Jul 27 21:13:26 1995
   10 Return-Path: <owner-ptk@WPI.EDU>
   11 Message-Id: <m0sbZHt-0006KIC@holos.com>
   12 From: mgm@holos.com (Martha Armour)
   13 Subject: Yet Another SVR4 Update
   14 To: ptk@WPI.EDU
   15 Date: Thu, 27 Jul 1995 16:12:08 -0400 (EDT)
   16 Cc: perl5-porters@nicoh.com
   17 Reply-To: mgm@holos.com
   18 X-Mailer: ELM [version 2.4 PL24]
   19 Content-Type: text/plain; charset=US-ASCII
   20 Content-Transfer-Encoding: 7bit
   21 Content-Length: 3791
   22 Sender: owner-ptk@WPI.EDU
   23 Precedence: bulk
   24 P-From: mgm@holos.com (Martha Armour)
   25 
   26 Tk-b5 is finally working on both of my SVR4 platforms.  After much
   27 gnashing of my teeth and pulling of my hair, I turned my problems over
   28 to a co-worker.  His trials, tribulations and successes follow:
   29 
   30 The following was written by Len Reed <lbr@holos.com>:
   31 
   32 I've been fooling with Tk on three platforms:
   33 
   34 (A) AT&T GIS (formerly NCR) SVR4.
   35 	uname gives "4.0 3.0 3360,3430-R 386/486/MC"
   36 	This is a 3430 Microchannel machine.
   37 	It uses the "Metaware" compiler.
   38 (L) Linux (a.out executables), kernel version 1.2.5.  Uses gcc.
   39 (M) Motorola 88k SVR4 Unix, uname gives "4.0 R40V4.2 m88k mc88100"
   40     This machine came from Motorola with gcc (named cc).
   41 
   42 I'm using perl5.001m and Tk-b5.
   43 
   44 (L) worked fine.
   45 
   46 Both SVR4 machines--(A) and (M)--built perl fine.  I used the [svr4] hints:
   47 note that the ucb stuff was therefore included.
   48 
   49 Minor SVR4 troubles
   50 ------------------
   51 Both SVR4 systems required changes to Tk-b5/pTk/tkPort.h due to conflicts
   52 between Tk-provided prototypes and the system headers.  I removed tkPort.h's
   53 gettimeofday and TclOpen prototypes.  (Since open() is defined as TclOpen,
   54 the TclOpen prototype conflicts the the system open() prototype: the latter
   55 uses ... for the 3rd parameter.)
   56 
   57 The (M) machine exhibited a weird problem generating position independent
   58 code.  Perl detected that this was gcc and tried to use -fpic.  That
   59 was pretty well ignored in the perl build.  Then, the Tk build turned
   60 this into -fPIC.  The -f was ignored, and -P became "run the preprocessor."
   61 I ended up forcing perl to use -kPIC, which worked fine for both perl and Tk.
   62 
   63 
   64 Major SVR4 troubles
   65 -------------------
   66 
   67 Both SVR4 systems had trouble with dynamic linking.  Specifically, they could
   68 not find XOpenDisplay().  This was traced to the dlopen semantics.  The
   69 dlopen(3X) manual says that "objects loaded by a single ... dlopen may
   70 .. not directly reference symobls from objects loaded by a different dlopen."
   71 The Tk module could not find the Xwindows stuff.  When I added -lX11 to
   72 the perl link command and rebuilt perl, the Xwindows library worked fine.
   73 
   74 Additional AT&T (NCR) troubles
   75 ------------------------------
   76 
   77 The AT&T machine (A) had two additional problems, both of which were hell
   78 to find.
   79 
   80 Tk basic_demo script opens "/dev/tty" and the passes it to an event handler.
   81 On the AT&T machine, it appears that select (actually its poll at the
   82 kernel interface level) won't work if one of the descriptors is /dev/tty.
   83 It returned an error (ENXIO) and Tk went into a loop.  No mouse or keyboard
   84 input was accepted.  Interestingly, opening `tty`, which gave the name
   85 of the pseudo tty for my xterm, worked fine.  I'm guessing that this is
   86 a bug in the /dev/tty driver.
   87 
   88 After fixing that, basic_demo (and other perl Tk scripts) worked fine on
   89 the console but not on other X servers.  I discovered that XOpenDisplay()
   90 was hanging up on everything except the console.  Even setting DISPLAY
   91 to something like "nosuchmachine:0" would lock it up.  The fix was to
   92 remove -lnet from the perl link command.  The /usr/lib/libnet.so library
   93 appears to contain something that really messes XOpenDisplay(): a
   94 trivial C program that did nothing but call XOpenDisplay() was the
   95 key to putting the blame on libnet.so.
   96 
   97 After taking -lnet out of perl's list of libraries, I found that Tk
   98 could not find strcasecmp, which oddly enough was in libnet.so.  I
   99 then added -lresolv to perl's list--not to Tk's, mind you, for the
  100 same reason that -lX11 had to been in perl's list.  Anyway, libresolv.so
  101 gave me strcasecmp.
  102 
  103 I dunno how much use any of this is to someone not on a GIS machine.
  104 Let me (lbr@holos.com) know if you'd like more info leading to easing
  105 installation on this GIS/NCR machine.
  106 
  107 --- End of Len's comments ---
  108 --
  109 Martha G. Armour
  110 Holos Software, Inc.
  111 Atlanta, Georgia USA
  112 mgm@holos.com