root/trunk/aolserver/nsperl2/INSTALL.txt

Revision 390, 4.9 kB (checked in by aufflick, 3 months ago)

*** empty log message ***

Line 
1 I am not entirely sure yet what are the minimum supported versions of Tcl/Aolserver etc., and what
2 flexibility you have with perl compilation options (although perl 5.10 is almost definately required).
3
4 For now, here is exactly what I did to install - my tested configurations are listed below
5
6 #
7 # Setup install directory & env variables
8 #
9 # I put tcl and aolserver in the same root, but you
10 # probably don't need to.
11 #
12 # I always run the test suites - some people skip them.
13 #
14 # be careful of any existing LIBS, CINCLUDES  etc. env variables - I had them set for
15 # MacPorts and it caused problems getting aolserver to link to my new tcl
16 #
17
18
19     export NSSRC=~/aol/aolserver-4.5.0    # aolserver src tree (need to get to nsd.h)
20     export NSINST=/opt/aolserver-test     # where aolserver is going to be installed
21     export TCLINST=/opt/aolserver-test    # where tcl is going to be installed
22     export NSPERLINST=/opt/aolserver-perl # where perl & modules are going to be installed
23     export NSPERL=$NSPERLINST/bin/perl     # path to the perl binary
24
25     sudo mkdir $NSINST
26     sudo mkdir $TCLINST
27     sudo mkdir $NSPERLINST
28     sudo chown aufflick $NSINST $TCLINST $NSPERLINST # use the appropriate user here
29
30 # MacOS X specific
31 #
32 # You also need to do the following on 10.5 if you use aolserver 4.5.0 (instead of HEAD).
33 # I know, it seems to make no sense, but you need to, else you get seg faults.
34 # See: http://www.mail-archive.com/aolserver@listserv.aol.com/msg11339.html
35
36   ulimit -n 256
37
38 #
39 # Install tcl
40 #
41 # you may be able to use a suitable existing installation
42 # note the corefoundation caveat for Mac installs below
43 #
44
45     tar zxf tcl8.4.18-src.tar.gz
46     cd tcl8.4.18/unix
47
48 # for Mac OS X:
49 # (the disable-corefoundation is required otherwise any forks in perl code will be unsafe)
50     ./configure --enable-threads --disable-corefoundation --prefix=$TCLINST
51
52 # for Centos 4.5 (Linux): [Note 1]
53     cat configure | | sed 's/-lieee//' > configure.noieee
54     sh configure.noieee --enable-threads --prefix=$TCLINST
55
56     make
57     make test      # I get an odd clock failure on both platforms [Note 2]
58     make install
59     cd ../..
60
61 #
62 # Install Aolserver
63 #
64
65     tar zxf aolserver-4.5.0-src.tar.gz
66     cd aolserver-4.5.0
67
68     $TCLINST/bin/tclsh8.4 nsconfig.tcl -install $NSINST
69
70 # For MacOS:
71     make
72     make install
73
74 # For Centos 4.5 (Linux): [Note 3]
75     CFLAGS=-nostartfiles make
76     CFLAGS=-nostartfiles make install
77
78     cd ..
79
80 #
81 # Install perl
82 #
83
84     tar zxf perl-5.10.0.tar.gz
85     cd perl-5.10.0
86
87 # omit the -d on the end if you want interactive configuration prompts instead of defaults
88
89     sh Configure -Dprefix=$NSPERLINST -Dusethreads -Dusemultiplicity -d
90
91     make
92     make test     # these tests take a long time
93     make install
94
95 #
96 # Install perl module required for nsperl2 tests
97 #
98 # the CPAN shell will ask you all sorts of questions - mostly the defaults are fine.
99 # it won't ask you again if you install more modules later.
100 #
101
102    $NSPERL -MCPAN -e'install "LWP"'
103
104 #
105 # Install nsperl2
106 #
107
108     cd ..
109     svn co http://svn.pumptheory.com/repos/trunk/aolserver/nsperl2
110     cd nsperl2
111     # see MacOS X note below
112     make install
113     make test
114
115 # note that 'make test' starts an nsd server on port
116 # MacOS X note - with aolserver 4.5.0 you seem to need to do the following due to a bug in the
117 # build process:
118
119     cd nsperl2; make; cd ..
120
121
122 Tested Configurations
123 ---------------------
124
125 O/S                            Tcl     Perl  Aolserver                 gcc
126 ------------------------------ ------- ----- ------------------------- -------------------------------
127 Mac OS X 10.5 (PPC)            8.4.18  5.10  cvs (HEAD at 2008-03-22)  powerpc-apple-darwin9-gcc-4.0.1
128 Mac OS X 10.5 (PPC)            8.4.18  5.10  4.5.0                     powerpc-apple-darwin9-gcc-4.0.1
129 CentOS 4.5 (Intel 32 bit SMP)  8.4.18  5.10  4.5.0                     3.4.6 20060404 (Red Hat 3.4.6-9)
130
131
132 Notes
133 -----
134
135 1. Tcl always compiles against libieee on Linux. This is not needed with newish glibc
136    and causes a link error when nsperl2 links perl with tcl. On Linux (and perhaps other platforms)
137    you must currently remove -lieee from configure so it doesn't get into the Makefile or the tclConfig.sh
138
139    Someone from RedHat seems to agree -lieee is unnecessary:
140      http://rpmfind.net/linux/RPM/redhat/enterprise/4/x86_64/src/tcl-8.4.7-2.src.html
141
142
143 2. I get the following tcl make test failure on both MacOS X 10.5 and Centos 4.5:
144
145    ==== clock-8.1 clock scan midnight/gmt range bug 413397 FAILED
146    ==== Contents of test case:
147    
148        set fmt "%m/%d"
149        list [clock format [clock scan year -base $5amPST -gmt 0] -format $fmt]  [clock format [clock scan year -base $5amPST -gmt 1] -format $fmt]
150    
151    ---- Result was:
152    01/01 01/01
153    ---- Result should have been (exact matching):
154    12/31 12/31
155    ==== clock-8.1 FAILED
156
157
158 3. Unsure if the -nostartflags is unnecessary on MacOS X because of the newer gcc or the
159    Darwin libtool. Newer Linux installations or other Unix flavours may vary.
Note: See TracBrowser for help on using the browser.