I use biblatex
with biber
as its backend. My code is following (test.tex
):
\documentclass{article}
\usepackage[backend=biber]{biblatex}
\addbibresource{ref.bib}
\begin{document}
Test test test \cite{Lee2009a}
\printbibliography
\end{document}
and ref.bib
is
@article{Lee2009a,
author = {Lee, Geun},
journal = {The Korean Journal of Defense Analysis},
number = {2},
pages = {205--218},
title = {{A Theory of Soft Power and Korea's Soft Power Strategy}},
volume = {21},
year = {2009}
}
I run biber
after pdflatex
. However, it only gives an empty bbl file.
The whole blg file is
[0] Config.pm:354> INFO - This is Biber 2.7
[1] Config.pm:357> INFO - Logfile is 'test.blg'
[80] biber-MSWIN32:303> INFO - ===
[123] Biber.pm:359> INFO - Reading 'test.bcf'
[282] Biber.pm:835> INFO - Found 1 citekeys in bib section 0
[314] Biber.pm:3670> INFO - Processing section 0
[352] Biber.pm:3840> INFO - Looking for bibtex format file 'ref.bib' for section 0
Compiling on the command line, biber test
will give the following things on cmd:
INFO - This is Biber 2.7
INFO - Logfile is 'test.blg'
INFO - Reading 'test.bcf'
INFO - Found 1 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'ref.bib' for section 0
biber --debug test
will give (祥东
is my user name)
INFO - This is Biber 2.7
INFO - Logfile is 'test.blg'
INFO - DEBUG mode: all messages are logged to 'test.blg'
INFO - Reading 'test.bcf'
INFO - Found 1 citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'ref.bib' for section 0
write_file 'C:\Users\祥东\AppData\Local\Temp\tlZld3jtIt\ref.bib_8456.utf8' - sysopen: No such file or directory at C:\Users\祥东\AppData\Local\Temp\par-cfe9b6ab\cache-2aa0b74e6d5e75f8e71a4b8c9501a9c7c24ddbf0\inc\lib/Biber/Input/file/bibtex.pm line 1428.
ref.bib_8456.utf8
in the last line may change at different run.
All the file are stored in a folder named testbib
on my desktop.
Platform: TeX Live 2017, biblatex 3.7 and biber 2.7 on Windows 10.
Best Answer
With the hint from @Ulrike Fischer, I have some solutions:
Change a user environment variable named
TEMP
andTMP
. Their original value should beIt is actually
C:\Users\<username>\AppData\Local\Temp
. Then modify it toNow it is
C:\WINDOWS\temp;C:\Users\<username>\AppData\Local\Temp
.Then run
to generate cache files. It will take sometime and then show the current cache location.
(You can run
biber <filename>
as normal. It will generate the cache files automatically)Now
biber
can run normally.More information can be found in section 4.2 in
biber
manual (v2.7).Environment variables
You may find it in
Control panel
>System
>Advanced system settings
>Environment variables...
. The user environment variablesTEMP
andTMP
can be found at the top panel.Note
I'm not sure whether this way is OK because it has changed the system behaviour.