Main version

Latexmk (whose current released version is 4.52c dated 19 January 2017) is a perl script for running LaTeX the correct number of times to resolve cross references, etc; it also runs auxiliary programs (bibtex, makeindex if necessary, and dvips and/or a previewer as requested). It has a number of other useful capabilities, for example to start a previewer and then run latex whenever the source files are updated, so that the previewer gives an up-to-date view of the document. The script runs on both UNIX and MS-WINDOWS (XP, etc). Here is the documentation in plain text format, and in pdf format.

It is also available from CTAN at

New versions being tested. Archive of old versions

A number of updates are not yet in the main version. You can try out any new version (mostly stable), which can be obtained from the collection of new and archived versions of latexmk. You can also see archives of old versions there.

How to use dvipdfm and dvipdfmx with latexmk

Users trying to use dvipdfm and dvipdfmx with latexmk have run into trouble because the format of the command-line arguments for these programs are incompatible with that for dvipdf. This problem was solved in versions 4.01 or higher of latexmk. They allow a flexible specification of the commands executed by latexmk. To use dvipdfm, put the following in one of latexmk's initialization files (e.g., ~/.latexmkrc):
         $dvipdf = "dvipdfm %O -o %D %S";
To use dvipdfmx, just change the string dvipdfm to dvipdfmx.

For more details, see latexmk's documentation.

Up to software by John Collins.
This page is maintained by John Collins, 31 January 2017