pdflatex не может найти файл, но kpsewhich находит

pdflatex не может найти файл, но kpsewhich находит

У меня есть header.texфайл, который находится в $TEXMFHOME/tex/latex/, и я попытался использовать его \inputв другом .texфайле в каком-то другом каталоге. Обратите внимание, что kpsewhichон может найти header.tex, печатая его полный путь, и я также применил его texhashк своему $TEXMFHOMEкаталогу.

Однако, pdflatexпохоже, найти файл не удалось.

Я пробовал просматривать документацию и для указателей, kpathseaи для . Состояния, которые являются путем поиска файлов. И поэтому я добавил к этой среде, что, как я считаю, мне не нужно, но увы.pdflatexpdflatex$TEXINPUTS\input$TEXMFHOME

решение1

Я забыл упомянуть, что я использовал texliveonfly, что является моей ошибкой при задании вопроса. Чтобы запустить texliveonfly, мне нужно sudo, чтобы texliveonflyможно было установить недостающие пакеты, точно так же, как вам понадобятся sudoправа для установки пакетов через , tlmgrесли ваша система настроена таким образом.

Проблема заключается в том, что среда, в которой находится задача, когда вы запускаете ее как, sudoотличается от среды вашего пользователя. В случае, когда я запускаю ее как sudo, $TEXMFHOMEне указывает ни на один каталог, и, следовательно, она не может найти мои файлы.

Теперь я могу либо настроить $TEXMFHOMEдля root, либо использовать $TEXMFLOCALвместо этого. Я выбрал последний вариант, и это решило мою проблему.

Связанный контент