# Identical executable files with different names in MiKTeX

What is the difference between `miktex-*.exe` and `*.exe`, where `*` is any one of `bibtex`, `kpsewhich`, `luatex`, `makeindex`, `mf`, `mpost`, `omega`, `pdftex`, `tex`, `texlua`, `texluac`, `texworks`, or `xetex`? These files are all in `texmf\miktex\bin`. In all of these cases, the two files have identical sizes and (almost) identical timestamps. Why do they seem to be duplicated?

• This can IMHO correctly only be answered by Christian Schenk, the MiKTeX developer. Feb 8, 2013 at 1:47
• Almost forgotten: As far as I can tell, they also behave exactly, for example they print out the same version string. Feb 8, 2013 at 2:20
• @Speravir Handily, he's answered :-) Feb 8, 2013 at 9:30

The miktex- prefix is preferred when MiKTeX specific command-line options are used, i.e., when it is necessary that the MiKTeX variant is executed. For example, if you have MiKTeX and another TeX distribution installed side by side, then

`miktex-pdftex --include-directory=C:\MyTeXMF mydoc.tex`

would work, even if the MiKTeX bin directory is searched after the other bin directory.

• Welcome to TeX.sx! Feb 8, 2013 at 9:31
• I’m glad as supposedly a lot other people that you joint TeX.SE! (On the other hand this is bad for me and some others, because from now on we’re not authorized anymore to answer MiKTeX questions.) ;-) Feb 8, 2013 at 20:37

In Unix there is the possibility for files (executable programs, in particular) to have several names (hard links), when a program is run it gets the name of the executable as the zeroth argument. This is (was?) (ab)used to write programs that behave differently depending on the name with which they are invoked. This is used in LaTeX to run the base typesetter (essentially the executable you are seeing) with different formats, so it behaves like `latex`, `pdflatex`, or whatever other format is available.

• Sorry, but this is not an answer to the question … The topic here is MiKTeX the most (I guess) widespread TeX distribution for Windows (though there is an experimental Linux version). Feb 8, 2013 at 1:45
• @Speravir, that it is done this way in the C code on which all current TeX implementations are based, and said C code was created for Unix, the above is a reasonable guess... Feb 8, 2013 at 2:07
• OK, but on the other hand the question is not about `latex` vs. `pdflatex` but about e.g. `miktex-pdftex.exe` vs. `pdftex.exe`, that actually seem to be dupes. Feb 8, 2013 at 2:21