<div dir="auto"><div dir="auto">Thanks to all. My problem is finally solved. I didn't know that pdftex will judge the format just by the symlink name. Thanks.</div><div dir="auto"></div><div dir="auto"><br></div><br><div class="gmail_quote"><div dir="ltr">On Sun, Mar 25, 2018, 12:54 AM Reinhard Kotucha <<a href="mailto:reinhard.kotucha@web.de" target="_blank" rel="noreferrer">reinhard.kotucha@web.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 2018-03-24 at 20:46:31 +0100, Zdenek Wagner wrote:<br>
<br>
> latex and pdflatex executables exist on Windows only but as a<br>
> wrapper written in lua which calls pdftex with &formatname.<br>
<br>
Not exactly. The Lua wrappers are used by scripts. pdflatex.exe is a<br>
tiny program written in C which loads pdftex.dll and, dependent on<br>
argv[0], the appropriate format file. No Lua involved here.<br>
<br>
Scripts have to be treated differently. First of all, their locations<br>
within the TEXMF trees and the appropriate interpreter have to be<br>
determined. Furthermore, Perl and Ghostscript have to be added to<br>
PATH. The details are explained in<br>
<br>
bin/win32/runscript.tlu<br>
<br>
So we use different wrappers for TeX programs in bin/win32 and scripts<br>
in TEXMF. In older versions of TeX Live you could distinguish between<br>
these wrappers by file size. This doesn't seem to be the case anymore<br>
<br>
$ ls -l updmap.exe pdftex.exe<br>
-rwxr-xr-x 1 reinhard users 1536 Nov 25 2016 pdftex.exe<br>
-rwxr-xr-x 1 reinhard users 1536 Nov 25 2016 updmap.exe<br>
<br>
$ cmp updmap.exe pdflatex.exe<br>
updmap.exe pdflatex.exe differ: byte 137, line 2<br>
<br>
$ strings updmap.exe | grep '\.dll$'<br>
runscript.dll<br>
msvcrt.dll<br>
<br>
$ strings pdftex.exe | grep '\.dll$'<br>
pdftex.dll<br>
msvcrt.dll<br>
<br>
All the script related .exe wrappers are identical on purpose and<br>
invoke runscript.dll which in turn executes runscript.tlu.<br>
<br>
In order to support an additional script you have to<br>
<br>
copy runscript.exe mynewsript.exe<br>
<br>
but you run into trouble if you<br>
<br>
copy pdftex.exe mynewsript.exe<br>
<br>
> On unix systems (including Mac) these are just symlinks to<br>
> pdftex. If you use unix system, then cd to the executable directory<br>
> and do:<br>
><br>
> ln -s pdftex latex<br>
> ln -s pdftex pdflatex<br>
<br>
You just mention 2 of 263 symlinks. You did something completely<br>
wrong before if you have to create all of them manually. The preferred<br>
approach is<br>
<br>
$ cd /path/to/svn/trunk/Build/source<br>
$ ./Build <configure options><br>
<br>
The programs *and* symlinks are then in<br>
<br>
/path/to/svn/trunk/Build/source/inst/bin/<platform><br>
<br>
Regards,<br>
Reinhard<br>
<br>
--<br>
------------------------------------------------------------------<br>
Reinhard Kotucha Phone: +49-511-3373112<br>
Marschnerstr. 25<br>
D-30167 Hannover mailto:<a href="mailto:reinhard.kotucha@web.de" rel="noreferrer noreferrer" target="_blank">reinhard.kotucha@web.de</a><br>
------------------------------------------------------------------<br>
</blockquote></div></div>