[l2h] LaTeX2HTML errors and patches

Collin Starkweather collin.starkweather@colorado.edu
Mon, 28 May 2001 12:17:38 -0600


Forgive me if all of the following information is already common 
knowledge, but I just now downloaded and installed LaTeX2HTML and 
subscribed to the mailing list.

I am using LaTeX2HTML with the version given by

   $Id: latex2html,v 1.98 1999/04/01 10:58:10 RRM Exp $

and Perl version 5.6.0 (the results of perl -V are below my sig in case 
anyone's interested).

I got errors in both the latex2html and html3_2.pl executables.  The 
errors were due to undef and rmdir being called with an argument list, 
whereas perldoc -f undef says

   Note that this is a unary operator, not a list operator.

and perldoc -f rmdir says

   rmdir FILENAME

That is, rmdir does not take a list as an argument.

I corrected both problems and included the diffs below as well.

I hope this is helpful.  Who is maintaining the code base these days?  I 
couldn't find it on SourceForge, so I'd like to suggest registering the 
project there.  I use it for other open source projects, and it is a 
fantastic tool.

I'd also like to ask whether anyone has considered bundling it as a CPAN 
distribution?  I'm a CPAN author, and I can tell you from experience, 
enabling someone to do an install with a single command

   perl -MCPAN -e "install LaTeX::HTML"

is the easiest way to make your distribution available to the masses 
with the least muss and fuss.

After I got it working, it is performing flawlessly!  Thanks to all 
whose work is making my life easier!

-Me

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Collin Starkweather                                 (303) 402-9408
Consulting Software Architect    http://www.collinstarkweather.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ERROR MESSAGES FROM THE DISTRIBUTION CODE
=========================================

(Note that the diffs that fix the errors are below.)

What? latex2html peep-proposal.tex
Too many arguments for undef operator at /usr/local/bin/latex2html line 
2771, near "$trans)"
Too many arguments for undef operator at /usr/local/bin/latex2html line 
3076, near "$etmp)"
BEGIN not safe after errors--compilation aborted at 
/usr/local/bin/latex2html line 4404.
What? popd
popd: Directory stack empty.
What? latex2html peep-proposal.tex
Too many arguments for undef operator at /usr/local/bin/latex2html line 
2771, near "$trans)"
Too many arguments for undef operator at /usr/local/bin/latex2html line 
3076, near "$etmp)"
BEGIN not safe after errors--compilation aborted at 
/usr/local/bin/latex2html line 4404.
What? latex2html peep-proposal.tex
Too many arguments for rmdir at /usr/local/bin/latex2html line 8905, 
near "$print_dir) "
Too many arguments for undef operator at /usr/local/bin/latex2html line 
11315, near "$captions)"
Execution of /usr/local/bin/latex2html aborted due to compilation errors.
What? latex2html peep-proposal.tex

This is LaTeX2HTML Version 99.1 release (March 30, 1999)
by Nikos Drakos, CBLU, University of Leeds.

Revised and extended by:
  Marcus Hennecke, Ross Moore, Herb Swan and others
...producing markup for HTML version 3.2


Too many arguments for undef operator at 
/usr/local/latex2html/versions/html3_2.pl line 804, near "$endspec)"
Compilation failed in require at /usr/local/bin/latex2html line 14966.
What?

DIFF OF FIXED latex2html EXECUTABLE AND THE DISTRIBUTION EXECUTABLE
===================================================================

[root@morgenstern latex2html]# diff latex2html.dist latex2html
2771c2771,2772
<               undef($cmd,$trans);
---
 >               undef($cmd);
 >               undef($trans);
3076c3077,3079
<       undef ($cmd,$tmp,$etmp);
---
 >       undef ($cmd);
 >       undef ($tmp);
 >       undef ($etmp);
8902c8905,8906
<                       rmdir($this_dir,$print_dir) if $mode;
---
 >                       rmdir($this_dir) if $mode;
 >                       rmdir($print_dir) if $mode;
11312c11316,11317
<           undef($contents, $captions);
---
 >           undef($contents);
 >           undef($captions);

DIFF OF FIXED html3_2.pl EXECUTABLE AND THE DISTRIBUTION EXECUTABLE
===================================================================

[root@morgenstern versions]# diff html3_2.pl html3_2.pl.dist
804,806c804
<               undef ($cmd); undef @cmds;
<               undef ($tmp);
<               undef ($endspec);
---
 >               undef ($cmd,$tmp,$endspec); undef @cmds;

RESULTS OF perl -V
==================

Summary of my perl5 (revision 5.0 version 6 subversion 0) configuration:
Platform:
osname=linux, osvers=2.2.5-22smp, archname=i386-linux
uname='linux porky.devel.redhat.com 2.2.5-22smp #1 smp wed jun 2 
09:11:51 edt 1999 i686 unknown '
config_args='-des -Doptimize=-O2 -march=i386 -mcpu=i686 -Dcc=gcc 
-Dcccdlflags=-fPIC -Dinstallprefix=/usr -Dprefix=/usr 
-Darchname=i386-linux -Dd_dosuid -Dd_semctl_semun -Di_db -Di_ndbm 
-Di_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Uuselargefiles'
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef 
usemultiplicity=undef
useperlio=undef d_sfio=undef uselargefiles=undef
use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef
Compiler:
cc='gcc', optimize='-O2 -march=i386 -mcpu=i686', gccversion=2.96 
20000731 (experimental)
cppflags='-fno-strict-aliasing'
ccflags ='-fno-strict-aliasing'
stdchar='char', d_stdstdio=define, usevfork=false
intsize=4, longsize=4, ptrsize=4, doublesize=8
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', 
lseeksize=4
alignbytes=4, usemymalloc=n, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -ldl -lm -lc -lcrypt
libc=/lib/libc-2.1.92.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl):
Compile-time options:
Built under linux
Compiled at Aug 7 2000 10:59:51
@INC:
/usr/lib/perl5/5.6.0/i386-linux
/usr/lib/perl5/5.6.0
/usr/lib/perl5/site_perl/5.6.0/i386-linux
/usr/lib/perl5/site_perl/5.6.0
/usr/lib/perl5/site_perl
.