Latexmk is a command-line build tool that automates compilation of LaTeX documents. It determines which programs must run, repeats them when required, and stops when the requested output is up to date. This removes the need to manage LaTeX’s multi-pass build sequence by hand.
This is free and open source software.
Key Features
- Runs LaTeX the correct number of times to resolve cross-references, citations, tables of contents, indexes, and other generated information.
- Examines the files and messages produced during compilation to decide which actions are required, instead of relying on a fixed number of passes.
- Invokes auxiliary programs such as BibTeX, Biber, and makeindex when the document needs them.
- Supports LaTeX, pdfLaTeX, LuaLaTeX, and XeLaTeX workflows, with DVI, PostScript, and PDF output.
- Offers preview-continuous mode, which watches the main document, included TeX files, and graphics, rebuilds after changes, and refreshes a suitable viewer.
- Provides continuous compilation without launching a previewer through its
-ccmode. - Accepts extensive command-line configuration and Perl-based system, user, project, and explicitly selected initialization files.
- Supports custom dependency rules for generating missing inputs, making it possible to integrate graphics converters and specialist document tools.
- Provides hooks for running user-defined actions at selected points in the build and cleanup processes.
- Can place auxiliary files, normal output, and final output in separately configured directories.
- Includes cleanup commands for removing intermediate or generated files, together with dependency and directory reporting facilities.
- Cross-platform support – runs on Linux, macOS, and Windows and is distributed with both TeX Live and MiKTeX.
Website: cantab.net/users/johncollins/latexmk/
Support:
Developer: John Collins
License: GNU General Public License v2.0
Latexmk is written in Perl. Learn Perl with our recommended free books and free tutorials.
Related Software
| LaTeX Tools | |
|---|---|
| LyX | The power and flexibility of TeX/LaTeX with an intuitive graphical interface |
| KBibTeX | Reference management software primarily for BibTeX |
| TeXstudio | Fully featured open source LaTeX editor |
| VimTeX | Vim and Neovim filetype and syntax plugin |
| TeXmacs | WYSIWYG mathematical text editor using TeX fonts |
| JabRef | Graphical frontend to manage BibTeX databases |
| Biber | BibTeX replacement for users of BibLaTeX |
| TeXmaker | Integrates many different tools |
| Tectonic | Modernised, self-contained TeX and LaTeX engine |
| TeXworks | Simple front-end modeled on TeXShop |
| Atom-LaTeX | Typesetting with GitHub's Atom text editor |
| SiSU | Documents - structuring, publishing in multiple formats and search |
| Kile | KDE Integrated LaTeX Environment |
| BibLaTex | Programmable bibliographies and citations |
| Enter TeX | Integrated LaTeX Environment for the GNOME desktop |
| AUCTeX | Environment for editing LaTeX, ConTeXt, docTeX, Texinfo, and TeX files |
| TexMaths | LaTeX equation editor for LibreOffice |
| Setzer | Full-featured LaTeX editor |
| Gummi | Simple LaTeX editor |
| TexLab | Cross-platform implementation of the Language Server Protocol for LaTeX |
| Pybliographer | Tool for managing bibliographic databases |
| LaTeXDraw | Graphical drawing editor for LaTeX |
| KLatexFormula | Useful utility for creating images from LaTeX equations |
| Hieroglyphic | Find LaTeX symbols |
| Hand TeX | Handwritten LaTeX symbol classifier |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |


Please read our Comment Policy before commenting.