"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