Re: [htdig] installing htdig for NT

Subject: Re: [htdig] installing htdig for NT
From: Jim Kerslake (
Date: Tue Jul 18 2000 - 12:07:06 PDT

Many thanks for all of the help and advice -
I feel like I've been on a bizarre odyssey these past 4 days, trying to
persuade htdig to cooperate with my various Win32 systems. The mailing-list
documentation has been very helpful - but very scattered (particularly when
you're reading the cached versions from Google, since I seem to have picked
a time when was temporarily unavailable !!)
Perhaps a generic "guide to htdig on NT" would be useful?

Here's my experiences anyway - I'm 95% there, with one problem left - any NT
gurus out there might be able to help...?

Firstly - I bit the bullet in the end and installed Cygwin.
Glad I did really - I hadn't appreciated how nice it was!!

So, on my home Win98 / PWS system, I compiled htdig under Cygwin (having
edited the appropriate file paths into the Makefiles) and got it running
The PDF parser also works fine - I installed the Cygwin version of perl5.6,
and used it to run - which in turn points to the Win32 ports of
the xpdf utilities.
All works perfectly.

Inspired by that, I repeated the process exactly at work, on my NT
Compiled htdig under Cygwin, and got it working fine.
The PDF parser was more troublesome here - it generated multiple errors
saying that the PDF files were corrupted.
I took note of the previous mailing-list advice to edit
/htdig/ adding a "b" thus:
    FILE *fl = fopen(path, "wb");
and that reduced the errors a bit, but did not eliminate them by any means.
Unfortunately, the workload of parsing these big PDFs just brought my NT
machine to a near-standstill (funny how that didn't happen in Win98), so I
gave up on the PDF aspect at this point.
Still, htdig and htsort worked fine.

Then, I tried moving the system onto the WinNT server, which is where I most
need them. Installing Cygwin on this box is probably not an option, so I
just copied those .exe's which I had compiled on NT Workstation (plus the
two necessary Cygwin .dll's ) into the same locations.

Trouble at this point:
htdig.exe works fine, as does the htsearch CGI end of things.
But htmerge.exe just bombs out with the error: "Word sort failed".

sort.exe was there, of course, in the correct location, as compiled in to
/htmerge/Makefile :
LOCAL_DEFINES= -DSORT_PROG=\"C:/htdig/bin/sort.exe\"

Reading the FAQ pointed the finger of suspicion at the use of temporary
filespace for the word-sort.
So I attempted various tricks (picked up from archives of this mailing list)
to specify a temp location:

(i) tried to specify an environment variable in a batch file: SET
(ii) tried to hard-code the location of the temp space, in
    String tmpdir = "c:/Temp";
(iii) tried removing the -T flag in /htmerge/ so that:
command << " -T " << tmpdir; became command << tmpdir;
(iv) tried compiling the GNU sort (from textutils) under Cygwin, and using
this as my sort.exe (rather than the original Cygwin one)

Having tried various permutations of these (and re-making htmerge about a
dozen times), I never once got htmerge to work on the NT server (though it
usually did on my NT workstation).

So I'm wondering if I'm missing anything blindingly obvious about NTserver's
handling of temp filespace? I'm totally clueless about NT and its filesystem
/ permissions structure - do I have to do anything else to persuade NTserver
to allow sort.exe to run successfully? I'm doing all this logged in as the
server administrator (what a joke!).


To unsubscribe from the htdig mailing list, send a message to
You will receive a message to confirm this.

This archive was generated by hypermail 2b28 : Tue Jul 18 2000 - 02:08:45 PDT