[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#181882: tetex-base: Installation error: "kpsewhich: command not found"



On Sat, Feb 22, 2003 at 09:01:53AM +0900, Atsuhito Kohda wrote:
> From: Eugen Dedu <Eugen.Dedu@prism.uvsq.fr>
> Subject: Re: Bug#181882: tetex-base: Installation error: "kpsewhich: command not found"
> Date: Fri, 21 Feb 2003 17:55:51 +0100
> 
> > Adding a `-x /usr/bin/kpsewhich' before using it does not solve the 
> > problem, because it seems that ALL the `and' clauses are executed:
> > 
> > eminescu:~$ if [ -x /usr/bin/kpsewhich ]; then echo one; else echo two; fi
> > two
> > eminescu:~$ if [ -x /usr/bin/kpsewhich -a X"`kpsewhich 
> > --expand-var='$TEXMFMAIN'`" = X"/usr/share/texmf" ]; then echo one; else 
> > echo two; fi
> > bash: kpsewhich: command not found
> > two
> > eminescu:~$
> > 
> > A check for existence of /usr/bin/kpsewhich should be done probably 
> > before the if.
> 
> Hmm, perhaps we need more investigation.

This is the correct solution: shell expands the `...` *before* it
passes the command to '['.  So we need to do something like:

if [ -x /usr/bin/kpsewhich ]; then
    HAVE_KPSEWHICH=1
else
    HAVE_KPSEWHICH=0
fi

if [ $HAVE_KPSEWHICH -eq 1 -a -x ${UPDMAP} -a ... ]; then
    ....

   Julian

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

        Julian Gilbey, website: http://www.polya.uklinux.net/
   Debian GNU/Linux Developer, see: http://people.debian.org/~jdg/
     Visit http://www.thehungersite.com/ to help feed the hungry



Reply to: