Texstudio + Biber + build folder
Solution to use Texstudio and output the build (temporary) files into a seperate folder using biber:
- Put a new Folder with
YourName
into the same directory as your main .tex file. 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
respectivelypdflatex -synctex=1 -interaction=nonstopmode -output-directory=build %.tex
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)- In
Options
bottom left corner activate theadditional options
checkbox. Add your folder toConfigure -> 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:
- PdfLaTeX:
pdflatex.exe -synctex=1 -interaction=nonstopmode --aux-directory=build %.tex
- BibTeX:
bibtex.exe build/% -include-directory=build
- 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
.