[fptex] ConTeXt perl scripts failing on Win98

George N. White III aa056 at chebucto.ns.ca
Thu Jan 15 16:42:51 CET 2004


On Thu, 15 Jan 2004, Fabrice Popineau wrote:

>
> > I finally got the replacement disk for a Win98(SE) system that died
> > testing ConTeXT on TL2003 pre-releases.  I've put on the fptex 0.7
> > from CTAN (ftp:ctan.cms.math.ca) with files dated Jan 6th, and am back
> > to the problems I had in Sept. with texexec.pl failing to find
> > texexec.ini.
>
> > If I hack texexec.pl where it loops thru the path components to set
> > $kpsewhich="kpsewhich" just before the call to found_ini_file("ini"),
> > then texexec.ini is found, but there are problems with other scripts
> > (texfont.pl).  If memory serves, changing the path to use "\" instead
> > of "/" also worked.
>
> > TL2003 ConTeXt scripts worked for me on Win95, but that had too many
> > other problems.  Unfortunately, it looks like Win98 is going to be
> > around for a while, especially in the grad student community.

It turns out that the scripts DON'T work on Win95 --
texexec.ini was being found by searching and I hadn't tested
the others.  Now I wonder if they work on WinXP, as those are
faster machines.  The problem originally surfaced because the
brute force search was taking many minutes.

> If they worked on win95, they should work on win98. There is no
> difference between both from the point of view of these scripts.
>
> I just did a full texlive 2003 install on a  bare win98 using the 'inst'
> cdrom. It just worked.
> [ Karl: are you reading this, the failure that has been reported to you
> was using the inst cdrom, isn't it ? ]
>
> I then updated all the packages. It also worked. And now I have tried to
> texexec some very  basic  .tex  file  and it  also  worked (texutil  ran
> fine).
>
> So I wonder what's happening on your machine, but on a bare windows, it
> should just plain run. Any specific things to report about the software
> installed ?

It isn't bare, as it gets all our department standard apps., including
McAfee.  The problem seems to be that perl's backtick execution under
Win9x doesn't work with forward slashes in $kpsewhich.  This is strange,
as forward slashes are generally considered to be OK, and do work in
WinXP. The following patch to texexec.pl allows you to see the command
that failed to find texexec.ini:

*** texexec.pl.orig	2003-12-19 05:30:25.000000000 -0400
--- texexec.pl	2004-01-15 10:29:14.179289910 -0400
***************
*** 400,405 ****
--- 400,409 ----
      my $suffix = shift;
      my $IniPath = `$kpsewhich --format="other text files" -progname=context texexec.$suffix`;
      chomp($IniPath);
+     if ( ($Verbose) && ($IniPath eq '') ) {
+ 	print "found_ini_file -- failed command was:\n";
+         print "$kpsewhich --format=\"other text files\" -progname=context texexec.$suffix\n"
+     }
      return $IniPath;
  }

Is there way to check for error conditions in perl's backtic mechanism?
Is this problem specific to certain Win32 perl implementations?

--
George N. White III  <aa056 at chebucto.ns.ca>
  Head of St. Margarets Bay, Nova Scotia, Canada


More information about the fptex mailing list