On Sat, Nov 28, 2009 at 22:57, Ethan Merritt wrote:
> On Saturday 28 November 2009, Mojca Miklavec wrote:
>> On Sat, Nov 28, 2009 at 20:15, Allin Cottrell wrote:
>
>> > which is just a mess, and the installed sty file is not found by
>> > TeX. I think the kpsexpand invocation should be more like:
>> >
>> > kpsexpand '$$TEXMF'/tex/latex/gnuplot
>>
>> I never took a closer look at building scripts, but just a few remarks.
>>
>> In my opinion it's not very "polite" of gnuplot to mess up the system
>> installation of TeX (at /usr/local/whatever). It's much better to use
>> kpsexpand "\$TEXMFLOCAL/tex/latex/gnuplot"
>> (Even better would be some less generic name than "gnuplot"; for
>> example "gnuplot-lua".)
>
> I have both tetex and texlive installed, but neither of them provides
> a definition for TEXMF or TEXMFLOCAL or anything of the sort that I can find.
> Who is expected to provide such a variable?
First of all: I would personally not bother too much about installing
them to the proper place. Every TeX installation differs. I just
replied since I saw the comment (I never use "make install" for
gnuplot, I just manually copy the binary and maybe prologues.ps if I
happen to need it.)
You may try to execute
kpsewhich texmf.cnf
(or locate texmf.cnf; they are read one after another in some
particular well-defined order that I don't know by heart).
I have one at
/usr/local/texlive/2009/texmf.cnf
and one at
/usr/local/texlive/2009/texmf/web2c/texmf.cnf
that defines the variable as
TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local
It's not environmental variable as it would spoil the environment too
much, though environmental variables do take precedence if you set
them.
Doesn't
kpsexpand "\$TEXMFLOCAL"
work on your machine?
> What should gnuplot do if it is not defined (as it isn't on my machines)?
It's not environmental variable, it's hidden in texmf.cnf that
kpsewhich/kpsexpand should know about, but my answer would be just:
"Nothing". If anyone wants to use it, he should be able to put the
file anywhere (even in local folder).
>> And then again ... Peter has almost ready a generic version of
>> terminal (that also works with plain TeX and ConTeXt) that might have
>> to go to
>> kpsexpand "\$TEXMFLOCAL/tex/generic/gnuplot"
>> or even get split among several folders (generic, latex, context). Not
>> yet at this moment, but just as a warning that this might need a
>> change.
>
> Well, I have had zero success in this area. If you or someone else can
> contribute patches to the build system to make it compatible with a
> wider variety of TeX installations, that would be great.
>
> I can tell you that as of this moment, all of the above proposed commands
> will fail for me because TEXMFLOCAL is not defined, nor would I know what
> to define it to. So at the least I think we would need to include a
> short help message or tutorial on how to set this up.
I can try to answer any TeX-related question, send some short scripts
that do simple tasks (or talk in pseudocode) ... as long as this
doesn't mean that I need to touch Makefiles and configure.in.
In the particular example above the only thing that I'm not absolutely
sure is how shell expansion works. The following definitely doesn't
work for me:
kpsexpand '$$TEXMF'
but
kpsexpand "\$TEXMF"
does and returns
{/Users/mojca/.texlive2009/texmf-config,/Users/mojca/.texlive2009/texmf-var,/Users/mojca/Library/texmf,!!/usr/local/texlive/2009/texmf-config,!!/usr/local/texlive/2009/texmf-var,!!/usr/local/texlive/2009/texmf,!!/usr/local/texlive/2009/../texmf-local,!!/usr/local/texlive/2009/texmf-dist}
but this will be different on every single distribution. Performing
"sed" based on existence of "share" is pointless. Taking TEXMFLOCAL is
a wiser choice, but it may have the same form as the expression above
(not likely, but allowed). I would imagine that this should work even
in any TeX Live or even in tetex.
Mojca
|