Forum OpenACS Q&A: tDOM installation question

Collapse
Posted by jorge freitas on
Can anyone tell me how to configure aolserver 3.x to load tDOM. Thanks.
Collapse
Posted by Ernie Ghiglione on
Jorge,

Have a look at this thread

https://openacs.org/forums/message-view?message_id=83774

There you can find a thread to the tDOM forum where it says how to compile tDOM to work with AOLServer 3.x

Collapse
Posted by jorge freitas on
I install the tDOM the following way (whit the help of the links above, Thanks Ernie):

1) Edit the CONFIG file like that:

...
#
# Tcl on Unix (uses public Tcl library)
# --------------------------------------------
 ../configure
#
#
# AOLserver 3.X. It delivers its own patched Tcl lib.
# Also, this one builds tdom as AOLserver module.
# Please do not use "make install" after doing "make".
# You have to manually adjust AOLserver config file
# to load tdom module. See README.AOL for more info.
# ----------------------------------------------------
 aolsrc="/usr/local/aolserver"
 ../configure --enable-threads --disable-tdomalloc \
  --with-aolserver=$aolsrc \
   --with-tcl=/usr/local/src/aolserver/aolserver/tcl8.3.2/unix
#
...

2)
$ cd /tDOM-0.7.7/unix
$ sh CONFIG
$ make

3) Then i copy the libtdom0.7.7.so to /usr/local/aolserver/bin

4) Edit the aolserver config file:

#
# Modules to load
#
...
ns_param   libtdom         ${bindir}/libtdom0.7.7.so
...

5) Place the tdom.tcl file in /aolserver/modules/tcl.

But i still have the same message when i connect to the OpenACS Instaler page:

      Problems with XML support for AOLserver:

tDOM is not installed! You must have tDOM installed, or nothing will work. 

Anyone can tell me what do i do wrong. Thanks.
Collapse
Posted by Jade Rubick on
Jorge, did you restart Aolserver?
Collapse
Posted by jorge freitas on
Jade,
Yes, i restart the server. I try to install the tDOM doing
../configure
make
make test

But i get the folowing error when doing
 make test: 
...
TCL_LIBRARY=`echo /usr/src/build/138946-i386/BUILD/tcltk-8.3.3/tcl8.3.3/library` LD_LIBRARY_PATH=".:/usr/lib::/usr/local/pgsql/lib" LIBPATH=".:/usr/lib:" SHLIB_PATH=".:/usr/lib:" PATH=".:/usr/lib:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/voodoo/bin:/usr/local/pgsql/bin" TCLLIBPATH="." /usr/lib/../bin/tclsh `echo ../tests/all.tcl` -constraints longRunning
couldn't load file "./libtdom0.7.7.so": ./libtdom0.7.7.so: undefined symbol: Ns_Log
    while executing
"load ./libtdom0.7.7.so"
    ("package ifneeded" script)
    invoked from within
"package require tdom 0.7.5"
    invoked from within
"if {[catch {package present tdom}]} {
    package require tdom 0.7.5
} else {
    if {[lsearch [namespace children] ::tDOM] == -1} {
        # tcldoms..."
    (file "../tests/loadtdom.tcl" line 20)
    invoked from within
"source [file join [file dir [info script]] loadtdom.tcl]"
    (file "../tests/all.tcl" line 12)
make: *** [test] Error 1

Can you help me.
Thanks.
Collapse
Posted by Bart Teeuwisse on
Jorge,

but of course will you get an error when you run a test intended for a standard Tcl installation while you compiled the library for AOLserver.

Here's how I compiled and installed tDOM:

please see the README.AOL included with tDOM. You'll find tDOM at http://tdom.org/

If you are compiling tDOM for AOLServer 3.5.6, then remove

  --with-tcl=$aolsrc/tcl8.3.4/unix

from the 3.X configure options as listed in CONFIG.

After compiling libtdom0.7.7.so, copy this library to your aolserver/bin directory.

I prefer to rename the file to nstdom.so but that is just estatics. Then include the library in

  ns_section ns/server/<server>/modules

      nstdom  nstdom.so (or libtdom0.7.7.so if you haven't renamed
      the library)

That is all.

/Bart

Collapse
Posted by jorge freitas on
Bart,
It's was working all the time, the problem is that i have only included the library in the aolserver file and not in the openacs installation file. Sorry.
Thanks.