Texstudio + Biber + build folder

Solution to use Texstudio and output the build (temporary) files into a seperate folder using biber:

  1. Put a new Folder with YourName into the same directory as your main .tex file.
  2. Options -> Configure -> Commands -> PdfLaTeX for MiKTeX add -aux-directory=YourName. If you use TeX Live use -output-directory YourName. Result looks something like this: pdflatex.exe -synctex=1 -interaction=nonstopmode -aux-directory= build %.tex respectively pdflatex -synctex=1 -interaction=nonstopmode -output-directory=build %.tex
  3. Options -> Configure -> Commands -> Biber add --output_directory YourName. Result looks something like this: biber.exe --output_directory YourName % (careful: i think the space between the name and % is mandatory)
  4. In Options bottom left corner activate the additional options checkbox. Add your folder to Configure -> Build -> Additional Search Paths with .\YourName (or complete path)

Thanks @cfr for the solution!


(EDIT: Adding Biber)

For MiKTeX with TeXstudio, go to Options --> Configure TeXstudio --> Commands:

  1. PdfLaTeX: pdflatex.exe -synctex=1 -interaction=nonstopmode --aux-directory=build %.tex
  2. BibTeX: bibtex.exe build/% -include-directory=build
  3. Biber: biber.exe --output-directory build %

Copy and paste the above codes in the configuration page.

The above configuration will create a new subfolder in your working directory named "build" where all aux/log/out files will be created/saved there as well as Bibtex's and Biber's (except for synctex.gz). The working folder will be cleaner specially if you are doing a big project with a lot of sub .tex files (e.g. chapters ... etc, used with include or input).


Instead of trying to use build folders and stumbling again and again into problems with each tool, the LaTeX build wrapper ltx2any may be a better solution. One of its main features is

Keeps your main directory clean by default.

This goal is achieved by not compiling in the main folder but copying all required files into a temporary folder and compiling the document there. This avoids all the problems associated with build folders.


The basic usage is

ltx2any filename.tex 

and all the auxiliary files will be in a subdirectory. For more options read the linked webpage or run ltx2any --help.