
Среда
- Я использую MikTeX на Linux.
- У меня есть проект, расположенный по адресу
$PROJECTDIR/myproject.tex
. - У меня есть библиография по этому проекту, расположенная по адресу
$LOCALTEXMF/bibtex/bib/mybibs/myproject.bib
. - Я вызвал файл bib с помощью
\addbibresource{myproject.bib}
-- т. е. я включил расширение файла в файл tex. - Я добавил $LOCALTEXMF в корневые каталоги MikTeX (как я пытался предложить с помощью имени псевдопеременной).
- Я обновил базу данных имен файлов в консоли MikTeX. (Конечно, bibtex не работал бы, если бы я этого не сделал.)
kpsewhich myproject.bib
правильно выводит$LOCALTEXMF/bibtex/bib/mybibs/myprojectb.bib
.
Поведение
bibtex myproject
работает отлично.biber myproject
возвращаетсяERROR - Cannot find 'myproject.bib'!
.- Если я копирую
myproject.bib
в$PROJECTDIR/
, тоbiber myproject
работает правильно. Это явно проблема того, что biber не ищет в локальном дереве texmf.
Что-то странное
PATH
В каталоге, который я назвал, есть программная ссылкаbibtex
, которая указывает,/opt/miktex/bin/miktex-bibtex
как и ожидалось.PATH
В каталоге в моем названии есть софтлинк,biber
который указывает на/opt/miktex/libexec/miktex/runexe
. Я не понимаю, почему он не может указывать на (фактически несуществующий)/opt/miktex/bin/miktex-biber
по аналогии с bibtex./opt/miktex/libexec/miktex/runexe myproject
возвращает ошибку, отличную отbiber myproject
. Первая команда возвращаетSorry, but runexe did not succeed.
. Меня особенно озадачивает то, что мягкая ссылка ведет себя не так, как исполняемый файл, на который она указывает.
Вопросы
- Очевидно, у меня уже есть обходной путь (использование
bibtex
вместоbiber
), поэтому этот вопрос носит чисто академический характер/для моего образовательного интереса. - Почему biber терпит неудачу, а bibtex — успех?
- Почему софтлинк biber указывает на этот файл runexe?
- Почему софтлинк biber ведет себя иначе, чем прямой вызов runexe?