Very nice that someone took the time to write freeware packages to convert .doc, .ppt, and .xls files to text so that they can be indexed within KT. Thank you Vitus Wagner.
But my Gawd!!! If you're running on an ISP and cannot write to the /usr directories, installing this package is a major bear. However, I think I've sorted it and offer this solution for KT users. Usual disclaimer: This worked for me; YMMV.
The chief problem is that while it appears that the catdoc install will allow you to configure the correct dirs for the install it doesn’t seem to work due to the paths constructed using the variables in the makefile(s). The solution is to edit the makefiles to hardcode the correct paths.
PS: It would be great if someone with a lot more technical talent than me could rework this package so that it would simply compile into any directory and then read a config file in the same directory to get its pointers to charsets, etc. Also, there is most definitely a bug in catppt: It appears to only index the first couple of slides in a deck.
If you cannot execute the config program or the make/install routines on Linux, that is, if you do not have shell access, you probably cannot install catdoc since you must be able perform these actions. Possibly your ISP can do it for you or you could always switch to an ISP who does permit shell access, such as mine (a plug for a real good company with great tech support: http://www.interxstream.com).
You also need to be able to edit makefiles and if you have cpanel access this is easy enough or you can use vi through shell access
Warning: If botch something up and have to run this whole thing again, make sure that all .o files in /src (see below) are deleted as well as catppt, catdoc, and xls2csv or nothing much happens.
Anyway, on with the show. We assume the following
Your base dir for KT on your machine is:
/home/myco/public_html/kt
We assume that you will be loading several indexing tools into KT so they all go into a base dir of
/home/myco/public_html/kt/indextools
and you will install catdoc into
/home/myco/public_html/kt/indextools/catdoc
Note that if you unzip/ungz on a windows machine then upload files this particular app will not work. You must upload the gz file and unzip it there.
OK, you've got the catdoc product uploaded and unzipped and you have a bunch of files and dirs.
a) Go to the /home/myco/public_html/kt/indextools/catdoc dir and execute config as shown below
./configure --with-input=us-ascii --with-output=us-ascii --with-install-root=/home/myco/public_html/kt/indextools/catdoc --disable-wordview
No more, no less. This will generate a bunch of makefiles in various dirs. You must specify the us-ascii Unicode files because the default is Cyrillic.
A makefile is generated in /home/myco/public_html/kt/indextools/catdoc and this makefile just executes makefiles in src, doc, and charsets. Now, you will have a choice. You can execute this makefile or you can execute each makefile in the subdirs yourself. I chose that approach. Before you execute the make (either way) you must edit the makefiles.
b) Go to /home/myco/public_html/kt/indextools/catdoc/src and open the Makefile for edit (remember - downloading into Windows and editing will not work). Make the following changes
installroot = /home/myco/public_html/kt/indextools/catdoc (if not already set this way)
Hardcode the paths
SYSTEMRC=/home/myco/public_html/kt/indextools/catdoc/catdocrc
DATA_DIR=/home/myco/public_html/kt/indextools/catdoc
CHARSETPATH=/home/myco/public_html/kt/indextools/catdoc/charsets
The above is especially important since it is the line that is hardcoded into catdoc pointing to the charsets (and it is the inability to find the charsets that causes catdoc not to work).
Change all the subdir definitions to remove symbolic references and hardcode just the dir name
bindir = /bin
libdir = /lib
confdir = /etc
datadir = /share
mandir = /man
The following lines should be present in the makefile, if not, add them.
TARGET_CHARSET=us-ascii
SOURCE_CHARSET=us-ascii
Check out the bottom of the makefile to insure that the install for the programs looks as below. If it does not, change the lines.
../mkinstalldirs $(installroot)$(bindir)
$(INSTALL) -m 755 catdoc $(installroot)$(bindir)/catdoc
$(INSTALL) -m 755 xls2csv $(installroot)$(bindir)/xls2csv
$(INSTALL) -m 755 catppt $(installroot)$(bindir)/catppt
Save the makefile
c) Next go to /home/myco/public_html/kt/indextools/catdoc/charsets and edit the Makefile there. We edit this file to force the charsets and special ascii files to be copied into /home/myco/public_html/kt/indextools/catdoc/charsets. The easiest way is to ignore all the symbolic dir settings and just hard code into the install lines as below.
$(INSTALL) -m 644 ascii.spc /home/myco/public_html/kt/indextools/catdoc/charsets/ascii$(SPEC_EXT)
$(INSTALL) -m 644 tex.spc /home/myco/public_html/kt/indextools/catdoc/charsets/tex$(SPEC_EXT)
$(INSTALL) -m 644 ascii.rpl /home/myco/public_html/kt/indextools/catdoc/charsets/ascii$(REPL_EXT)
$(INSTALL) -m 644 tex.rpl /home/myco/public_html/kt/indextools/catdoc/charsets/tex$(REPL_EXT)
Save the makefile
d) Go to /home/myco/public_html/kt/indextools/catdoc/doc and edit the Makefile there. You can omit this step if you want because all this makefile does is install the documentation. Only a couple of changes are needed here.
installroot=/home/catalys/public_html/ktc/indextools/catdoc (this should already be present)
mandir = /man/man1
Save the makefile.
e) Now, as I stated I ran each make separately in each dir. So, change to /home/catalys/public_html/ktc/indextools/catdoc/src and execute
make
make install
Switch to =/home/catalys/public_html/ktc/indextools/catdoc/charsets and execute
make
make install
Finally, switch to =/home/catalys/public_html/ktc/indextools/catdoc/doc and execute
make
make install
You can now switch to /home/catalys/public_html/ktc/indextools/catdoc/bin and see if it works. Execute
./catdoc
If you are successful you will get a usage line displayed. If not, you will get an error message that it cannot find a file, which means something above did not work.
Good luck. This was all done with a few scotches and some luck myself.