Из-за чего TexLive странно устанавливает пакеты?

Ссылка скопирована
tex
1 ответ

По вводным: я использую texlive. tex документ точно правильный, потому что он билдился на другом устройстве.

sudo tlmgr install cmap tlmgr: package repository /usr/share (not verified: unknown) tlmgr install: package already present: cmap

По вводным: вроде бы он установил пакет.
По вводным: но когда я пытаюсь транслировать tex в pdf

pdflatex TheC.tex This is pdfTeX, Version 3.141592653-2.6-1.40.27 (TeX Live 2026/dev/Arch Linux) (preloaded format=pdflatex) restricted \write18 enabled. entering extended mode (./TheC.tex LaTeX2e <2024-11-01> patch level 2 L3 programming layer <2025-01-18> (/usr/share/texmf-dist/tex/latex/base/book.cls Document Class: book 2024/06/29 v1.4n Standard LaTeX document class (/usr/share/texmf-dist/tex/latex/base/bk12.clo)) ! LaTeX Error: File `cmap.sty' not found. Type X to quit or <RETURN> to proceed, or enter new name. (Default extension: sty) Enter file name: (/usr/share/texmf-dist/tex/latex/base/fontenc.sty ! Package fontenc Error: Encoding file `t2aenc.def' not found. (fontenc) You might have misspelled the name of the encoding (fontenc) or a required support package (e.g., cyrillic) is (fontenc) missing in your installation. See the fontenc package documentation for explanation. Type H <return> for immediate help. ... l.115 \ProcessOptions* ? R OK, entering \nonstopmode... ! LaTeX Error: Encoding scheme `T2A' unknown. See the LaTeX manual or LaTeX Companion for explanation. Type H <return> for immediate help. ... l.116 ...\familydefault\seriesdefault\shapedefault ) (/usr/share/texmf-dist/tex/latex/base/inputenc.sty) (/usr/share/texmf-dist/tex/generic/babel/babel.sty (/usr/share/texmf-dist/tex/generic/babel/txtbabel.def) (/usr/share/texmf-dist/tex/generic/babel-english/english.ldf) (/usr/share/texmf-dist/tex/generic/babel/errbabel.def) ! Package babel Error: Unknown option 'russian'. Either you misspelled it (babel) or the language definition file russian.ldf (babel) was not found. See the babel package documentation for explanation. Type H <return> for immediate help. ... l.4138 \ProcessOptions* ) (/usr/share/texmf-dist/tex/generic/babel/locale/en/babel-english.tex) ! LaTeX Error: File `listings.sty' not found. Type X to quit or <RETURN> to proceed, or enter new name. (Default extension: sty) Enter file name: ! Emergency stop. <read *> l.8 ^^M ! ==> Fatal error occurred, no output PDF file produced! Transcript written on TheC.log.

Сейчас ситуация такая: до этого я точно так же скачал все нужные пакеты, но почему то при билде они отсутсвуют, а в логах только ошибки об пакетах.

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Юрий Linux Ответ

Судя по выводу, у вас смешалась системная установка TeX Live из Arch Linux и tlmgr. В Arch пакеты TeX Live обычно управляются pacman, а не tlmgr. Когда tlmgr пишет repository /usr/share, он смотрит не в нормальный CTAN-репозиторий, а в локальную системную структуру. Поэтому получается странная ситуация: tlmgr считает cmap установленным, а pdflatex не находит cmap.sty.

Первое, что нужно проверить:

kpsewhich cmap.sty
which pdflatex
which tlmgr
tlmgr option repository

kpsewhich cmap.sty which pdflatex which tlmgr tlmgr option repository

Если kpsewhich ничего не выводит, файл реально не виден TeX-поиску. На Arch Linux правильнее поставить нужный пакет через pacman. Часто cmap находится в коллекциях latexrecommended/latexextra, но точное имя зависит от актуальной раскладки пакетов Arch.

sudo pacman -Syu
sudo pacman -S texlive-latexrecommended texlive-latexextra

sudo pacman -Syu sudo pacman -S texlive-latexrecommended texlive-latexextra

Если вы хотите использовать именно upstream TeX Live с tlmgr, не смешивайте его с distro-пакетами. Нужно ставить TeX Live отдельно из install-tl, добавить его bin в PATH раньше /usr/bin и уже там использовать tlmgr. Смешанная схема “pdflatex из pacman, tlmgr из системной папки” почти всегда приводит к таким ошибкам.

После установки проверьте:

kpsewhich cmap.sty
pdflatex TheC.tex

kpsewhich cmap.sty pdflatex TheC.tex

Если файл появился, но сборка всё ещё падает, выполните обновление базы имен:

sudo mktexlsr
sudo fmtutil-sys --all

sudo mktexlsr sudo fmtutil-sys --all

Но обычно достаточно поставить корректный texlive-пакет через pacman. Главное правило: на Arch не лечить системный TeX Live через tlmgr. Либо полностью distro-managed через pacman, либо отдельный upstream TeX Live, но не смесь двух подходов.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно