According to James A. Arnold:
> First off, let me apologize for bothering you. I have searched and 
> found the problem but
> don't know how to implement the solution. Any help you can offer would
> be most welcome. It's driving me crazy. I found several answers by 
> you and thought you might help
> if I came crawling...  :)

I usually help those who post questions on the htdig-general mailing list
first.  I'm not sure why you'd rather not get help from anyone else on the
list.  See http://www.htdig.org/FAQ.html#q1.16

> Basically I can't get htdig to use anything other than /var/tmp when 
> running htmerge
> and I rut out of space on my FreeBSD box.
...
> After some digging I found out why htmerge was ignoring my requests
> to use an alternate /tmp directory:
> 
> "A second common problem is on systems with a BSD version of the sort 
> program (such as FreeBSD or NetBSD). This program uses the -T option 
> as a record separator rather than an alternate temporary directory. 
> On these systems, you must remove the TMPDIR environment variable 
> from rundig, or change the code in htmerge/words.cc not to use the -T 
> option." -- from http://www.htdig.org/FAQ.html#q5.9
> 
> I tried removing the tmpdir environment from rundig (and using 
> /usr/local/bin/htmerge -vvv -c /usr/local/bin/rundig ) as suggested 
> above but that did not work.

Is that a typo above, or are you really trying to use the rundig shell
script as an htdig configuration file?  The argument following -c should
be the name of a file of configuration attribute definitions, like htdig.conf.

> If I remove tmpdir from rundig how do I tell htmerge to use a 
> directory other then /var/tmp where
> I have enough room to run htmerge?

What you must understand is it's not htmerge that's using this directory
for temporary files, but rather it's the sort program that htmerge
calls to sort the wordlist that uses temporary files in some directory.
The trick is to figure out how to tell the "sort" program on your system
what directory it should be using for temporary files.  On most UNIX-like
systems, the -T option to sort is how that's done.  htmerge passes the
value of TMPDIR, if defined, to sort via -T, because sort doesn't normally
use the TMPDIR environment variable directly.  Unfortunately, the BSD
sort program uses -T for something else.  So, if there's another trick to
telling BSD sort to use another temporary directory, you need to use that.

See "man sort" on your system.  If it uses an environment variable,
just define and export that variable in rundig.  If it uses a different
command line option, change words.cc to give it that option instead of -T.
If there's no way to tell BSD sort to use a different directory, you're
either out of luck, or you'll need to install a different sort program,
e.g. GNU's sort, and configure htmerge to use that.

> Next, I uninstalled htdig and then went back to the port and did a 
> "make." Then I went into
> the work directory and tried to edit the words.cc file as suggested 
> above. After editing
> the file I then try to run "make install." It either compiles and 
> continues to ignore my new
> /tmp request or bombs out. Am I on the right track in using the port 
> and editing the words.cc
> file before running make install?
> 
> Below is the part of the code from words.cc. How would I edit our the 
> -T option without messing it up?
> 
>      //
>      // Sort the list of words.  This uses the unix sort program since it
>      // is very good at it.  :-)
>      //
>      if (verbose)
>          cout << "htmerge: Sorting..." << endl;
> 
>      String      command = SORT_PROG;
>      String      tmpdir = getenv("TMPDIR");
>      if (tmpdir.length())
>      {
> 
> Any help would be greatly appreciated.

The code that takes TMPDIR and adds a -T option to the command line is
this:

    String      tmpdir = getenv("TMPDIR");
    if (tmpdir.length())
    {
        command << " -T \"" << tmpdir << "\"";
    }

Just remove that or change the -T as appropriate.  If BSD sort can use
TMPDIR directly, remove the 5 lines above from words.cc, and that should
do it.  If sort uses a different environment variable, you don't even need
to remove these lines of code -- just don't define TMPDIR, but define the
other variable instead.  If sort uses a different option, change the -T
to that option.  If you install a different sort program to replace BSD
sort, just make sure SORT_PROG is defined to have the path to that program
in htmerge/Makefile's LOCAL_DEFINES variable.

-- 
Gilles R. Detillieux              E-mail: <[EMAIL PROTECTED]>
Spinal Cord Research Centre       WWW:    http://www.scrc.umanitoba.ca/~grdetil
Dept. Physiology, U. of Manitoba  Phone:  (204)789-3766
Winnipeg, MB  R3E 3J7  (Canada)   Fax:    (204)789-3930

_______________________________________________
htdig-general mailing list <[EMAIL PROTECTED]>
To unsubscribe, send a message to <[EMAIL PROTECTED]> with a 
subject of unsubscribe
FAQ: http://htdig.sourceforge.net/FAQ.html

Reply via email to