# Cross Platform LaTeX Build System

I am on Windows 7 Professional (64 bit) and would like to be able to execute one command to completely compile a PDF from source .tex files (including all required runs to get the table of contents, bibliography, etc).

I've seen LatexMake and Rubber. When I run LatexMake on Windows using Make for Windows I get the following error:

``````'[' is not recognized as an internal or external command,
operable program or batch file.
A subdirectory or file . already exists.
Error occurred while processing: ..
make: *** [.] Error 1
``````

I wanted to try Rubber but it has *nix-specific setup instructions. Perhaps somebody can give me some pointers on getting this running on Windows? Searching Google for combinations of `Windows`, `Rubber`, and `LaTeX` has proven ineffective, for obvious reaons (need a latex rubber seal on your windows?). Also, how would I use Rubber to make PDFs? According to the LaTeXMake page generating pdfs with Rubber is an "extra feature."

I would also like to build the same documents using the same solution on *nix systems if at all possible so I can leave the makefiles (or whatever ends up being used) in the source repository.

In the worst-case scenario, I can try using cygwin.

-
As you use MiKTeX on Windows, have you looked at texify? – uli Dec 14 '11 at 8:30
link to MiKTeX texify documentation – matth Dec 14 '11 at 8:51
Is LatexMake the same as Latexmk? Latexmk also comes with MiKTeX – matth Dec 14 '11 at 8:53
If you really want a unix like environment at Windows instead of using a Windows tool, you may try UnxUtils or MSYS. – Schweinebacke Dec 14 '11 at 9:35
There's also arara which is a Java application so it should work on both windows and *nix – Nicola Talbot Feb 1 '13 at 11:35

I'd go with latexmk -- versions exist for at least the following that I can verify:

• Ubuntu and Debian. It's not part of their old TeX Live installations, but packaged separately
• TeX Live 2011 on Windows (includes version 4.26)
• MacTeX 2010 (it's in the disabled engines folder for TeXshop by default, but can be easily enabled)

It may be available on other distributions as well. But in any case, I was incredibly happy to see it available by default on TeX Live for Windows. And you're not tied to a particular editor. I'm hoping to deploy a TeXnicCenter profile for our users using latexmk in the next few weeks.

EDIT: one other nice thing with latexmk is that I can automatically have it build a nomenclature or list of symbols for thesis/dissertation purposes. All I have to do is provide a .latexmkrc with the following lines:

```push @cus_dep_list, "nlo nls 0 nlo2nls"; # nomenclature
sub nlo2nls { system("makeindex \$_[0].nlo -s nomencl.ist -o \$_[0].nls -t \$_[0].nlg"); }
```

which basically says, "if you see a .nlo file, use this makeindex command to convert it into a .nls file".

-
On MiKTeX 2.9 latexmk is also included and works nicely. – Alexander Feb 1 '13 at 19:22

As suggested in the comments (but not in an answer yet) I checked out texify. Running the following command does everything I need:

``````texify -p input.tex
``````

Thanks, everybody!

-
`texify` is not cross-platform as far as I know. It's not included in TeXLive and appears to be MiKTeX only. See this question. – qubyte Dec 15 '11 at 1:31

I suggest you take a look at the Texmaker editor.

It is working on Linux, MacOS X and Windows. You can define quick compilation command to do pdflatex + bibtex + pdflatex + pdflatex in one sweep, hence producing directly your PDF with bibliography etc... You can add a makeindex pass as well if you have an index.

This is the tool I am using, and I am pretty sure many other people can vouch for other tools providing the same functionnalities.

Still, the very interesting point for Texmaker is that this is a cross-platform editor.

-
You can't always point and click on a button. Maybe the OP wants a document to be automatically generated from raw data and built every hour. – Federico Poloni Feb 1 '13 at 11:36

I'm using RTextDoc LaTeX editor. It is cross platform (since Java)

-

Regarding Rubber: You're right that it's difficult to find information on it because its clever name makes googling difficult. It does install in Cygwin with no trouble. Just download the ZIP or `tar.gz` file for the source from https://launchpad.net/rubber/ then follow the instructions in the README.

-