Check suitability of previously installed
TCL. Start Tcl (type tclsh
or find it using
-which tclsh
).
[root root]%info exists tcl_platform(threaded)
+which tclsh
).+[root root]%info exists tcl_platform(threaded)
1 [root root]%info patchlevel
8.4.7 @@ -31,8 +32,8 @@ threaded and the version is 8.4 or higher, then installing Tcl from source is optional.Retrieve -Tcl 8.4 (or higher). Download and install Tcl 8.4 -from source
Note for Debian users: you can apt-get install tcl8.4-dev if you +Tcl 8.4 (or higher). Download and install Tcl +8.4 from source
Note for Debian users: you can apt-get install tcl8.4-dev if you have the right version (stable users will need to add tcl8.4 to their sources.list file as described on the Install Postgres page). You'll have to use /usr/lib/tcl8.4/ instead of @@ -44,7 +45,8 @@
--with-tcl=/usr/lib/tcl8.4
.Remember that you have to be root if you want to follow these instructions. On macOS type
sudo su -
to become root.Alternatively use
curl -L --O
instead ofwget
(especially on macOS).[root root]#cd /usr/local/src
+-O instead ofwget
(especially on macOS).+[root root]#cd /usr/local/src
[root src]#wget http://heanet.dl.sourceforge.net/sourceforge/tcl/tcl8.4.9-src.tar.gz
[root src]#tar xfz tcl8.4.9-src.tar.gz
[root src]#cd tcl8.4.9/unix
@@ -60,8 +62,9 @@
-Retrieve AOLserver. Download the AOLserver -from CVS.
[root root]#cd /usr/local/src
+Retrieve AOLserver. Download the +AOLserver from CVS.+[root root]#cd /usr/local/src
[root src]#mkdir aolserver40r10
[root src]#cd aolserver40r10
[root aolserver]#cvs -z3 -d:pserver:anonymous\@cvs.sourceforge.net:/cvsroot/aolserver login
@@ -89,9 +92,10 @@
Configure, compile and install
-AOLserver. Many people need to run more than one
-version of AOLserver in parallel. This section accommodates future
-upgrades by installing AOLserver 4 in /usr/local/aolserver40r9
.
[root aolserver]#cd /usr/local/src/aolserver40r10/aolserver
+AOLserver. Many people need to run more than +one version of AOLserver in parallel. This section accommodates +future upgrades by installing AOLserver 4 in/usr/local/aolserver40r9
.+[root aolserver]#cd /usr/local/src/aolserver40r10/aolserver
[root aolserver]#./configure --prefix=/usr/local/aolserver40r10 --with-tcl=/usr/local/lib/
[root aolserver]#make install
cd /usr/local/src/aolserver40r10/aolserver ./configure --prefix=/usr/local/aolserver40r10 --with-tcl=/usr/local/lib/ @@ -103,20 +107,23 @@/usr/local/aolserver40r10
instead of/usr/local/aolserver
in the steps below and check both scripts and makefiles to ensure -they use the correct path.[root aolserver]#ln -s /usr/local/aolserver40r10 /usr/local/aolserver
+they use the correct path.+[root aolserver]#ln -s /usr/local/aolserver40r10 /usr/local/aolserver
Configure, compile and install the modules.
[root aolserver]#cd /usr/local/src/aolserver40r10/nscache
+Install nscache+[root aolserver]#cd /usr/local/src/aolserver40r10/nscache
[root nscache]#make install AOLSERVER=/usr/local/aolserver
Install nsoracle (if you want to -use Oracle)
[root nscache]#cd ../nsoracle
+use Oracle)+[root nscache]#cd ../nsoracle
[root nsoracle]#make install AOLSERVER=/usr/local/aolserver
OpenACS looks for the Oracle driver at /usr/local/aolserver/bin/ora8.so, but some versions of nsoracle may @@ -126,43 +133,57 @@
Install nspostgres (if you want -to use Postgres)
[root nscache]#cd ../nspostgres
+to use Postgres)+[root nscache]#cd ../nspostgres
[root nspostgres]#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pgsql/lib:/usr/local/aolserver/lib
[root nspostgres]#make install POSTGRES=LSB ACS=1 INST=/usr/local/aolserver AOLSERVER=/usr/local/aolserver
-If you get errors like:
nspostgres.c: In function `Ns_PgTableList': -nspostgres.c:679: warning: passing arg 3 of `Tcl_DStringAppend' as signed due to prototypethen PostGreSQL is probably not in the standard location. The -location of PostGreSQL is very dependent on which method was used +
If you get errors like:
+nspostgres.c: In function `Ns_PgTableList': +nspostgres.c:679: warning: passing arg 3 of `Tcl_DStringAppend' as signed due to prototype +
then PostgreSQL is probably not in the standard location. The
+location of PostgreSQL is very dependent on which method was used
to install it. To correct the problem, replace LSB
with the path to the path to your
-PostGreSQL installation. Often this is /usr/local/pgsql
.
You can use the ldd
command
+PostgreSQL installation. Often this is /usr/local/pgsql
.
You can use the ldd
command
to verify that all libraries are linked in: ldd
/usr/local/src/aolserver40r10/nspostgres/nspostgres.so
If you run into problems with libpq.a do the following (and -repeat the step above)
[root nspostgres]#ranlib /usr/local/pgsql/lib/libpq.a
+repeat the step above)+[root nspostgres]#ranlib /usr/local/pgsql/lib/libpq.a
If you run into problems with the linker, edit the Makefile. Add -
-lnsdb
to theMODLIBS
var.MODLIBS = -L$(PGLIB) -lpq -lnsdb +-lnsdb
to theMODLIBS
var.+MODLIBS = -L$(PGLIB) -lpq -lnsdb
[root nspostgres]# cd ../nssha1
-
Now install nssha1:
[root nssha1]#make install AOLSERVER=/usr/local/aolserver
+Install nssha1+[root nspostgres]#cd ../nssha1
+Now install nssha1:
+[root nssha1]#make install AOLSERVER=/usr/local/aolserver
If the make fails you will have to edit nssha1.c. Comment out the following 2 lines (lines 139-140):
// typedef unsigned int u_int32_t; -// typedef unsigned char u_int8_t;+// typedef unsigned char u_int8_t; +
[root nssha1]#cd ../tDOM-0.8.0/unix
+Install tDOM+[root nssha1]#cd ../tDOM-0.8.0/unix
Edit the
CONFIG
file. Uncomment the instructions meant for AOLserver 4, but edit it to -look like this:../configure --enable-threads --disable-tdomalloc - --prefix=/usr/local/aolserver --with-tcl=/usr/local/libNote that the location of the Tcl library may vary on different -platforms (e.g. for Debian 3.0: --with-tcl=/usr/lib/tcl8.4)
Now you can compile and configure tDOM
[root unix]#sh CONFIG
+look like this:+../configure --enable-threads --disable-tdomalloc + --prefix=/usr/local/aolserver --with-tcl=/usr/local/lib +Note that the location of the Tcl library may vary on different +platforms (e.g. for Debian 3.0: --with-tcl=/usr/lib/tcl8.4)
Now you can compile and configure tDOM
+[root unix]#sh CONFIG
[root unix]#make install
[root nssha1]# cd ../tcllib
-
Configure and compile TCLLIB
[root unix]#./configure -prefix=/usr/local/aolserver40r10
+Install TCLLIB+[root nssha1]#cd ../tcllib
+Configure and compile TCLLIB
+[root unix]#./configure -prefix=/usr/local/aolserver40r10
[root unix]#make install
Oracle
[root aolserver]#cd /usr/local/aolserver/bin
+Oracle
+[root aolserver]#cd /usr/local/aolserver/bin
[root bin]#cp /tmp/openacs-5.9.0/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
[root bin]#chmod 750 nsd-oracle
[root bin]# @@ -190,7 +212,8 @@ chmod 750 nsd-oracle
PostgreSQL
[root aolserver]#cd /usr/local/aolserver/bin
+PostgreSQL
+[root aolserver]#cd /usr/local/aolserver/bin
[root bin]#cp /var/tmp/openacs-5.9.0/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
[root bin]#chmod 755 nsd-postgres
[root bin]# @@ -202,16 +225,16 @@
You may need to edit these scripts if you are not using /usr/local/aolserver as the directory of Aolserver4.
-Change startup script (optional). If you
-want to run AOLserver on a port below 1024 (normally, for a
-webserver you will use 80), you will have to change the
-/var/lib/aolserver/service0/etc/daemontools/run
+Change startup script
+(optional). If you want to run AOLserver on a
+port below 1024 (normally, for a webserver you will use 80), you
+will have to change the /var/lib/aolserver/service0/etc/daemontools/run
script according to the documentation found there (namely: Add the
-b yourip:yourport switch)