Вопрос об использовании pdflatex на RedHat в CentOS


8

Я новичок в использовании систем Linux.

Мне дали задание написать документ с использованием LaTeX и преобразовать файл в файл PDF для отправки. Поэтому я попытался использовать свой CentOS для этого. Версия моей системы Linux - RedHat. Я искал способы конвертировать .tex файл в .pdf в Интернете, который сказал мне, чтобы установить texlive. Я так и сделал.

[csi2102@localhost]$ yum install -y texlive
Loaded plugins: fastestmirror, refresh-packagekit
Loading mirror speeds from cached hostfile
  * base: data.nicehosting.co.kr
  * extras: data.nicehosting.co.kr
  * updates: data.nicehosting.co.kr
Setting up Install Process
Package texlive-2007-57.e.16_2.i686 already installed and latest version
Nothing to do

Поэтому я искал способы решения этой проблемы и один из сайтов предложил использовать rpm -qa | grep texкоманду. Но нигде я не мог найти файл pdflatex.

[csi2102@localhost]$ rpm -qa | grep tex
texlive-texmf-errata-dvips-2007.7.1.e16.noarch
texlive-2007.57.e16_2.i686
texlive-texmf-errata-fonts-2007.7.1e16.noarch
texlive-texmf-2007-38.e16.noarch
texlive-texmf-fonts-2007-38.e16.noarch
texlive-texmf-errata-2007-7.1.e16.noarch
texlive-texmf-dvips-2007-38.e16.noarch
[csi2102@localhost]$ 

Это то, что я увидел, когда набрал команду.

Когда я пытаюсь использовать команду pdflatex, latex или pdftex, это то, что я получаю.

[csi2102@localhost]$ latex homework
bash: latex: command not found
[csi2102@localhost]$ pdflatex homework
bash: pdflatex: command not found
[csi2102@localhost]$ pdftex homework
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 %&-line parsing enabled.
entering extended mode
(./homework1.tex
!Undefined control sequence.
1.7 \documentclass
                   [pdftex,11pt] {article}
?

Я не понимаю, почему моя система не распознает то, что говорили другие люди.

PS Да, и на всякий случай я хотел прикрепить свой файл .tex, задаваясь вопросом, не создает ли проблема то, что я написал в своем файле.

\documentclass[pdftex,11pt] {article}
\usepackage[utf8] {inputenc}

\usepackage{geometry}
\gemoetry{a4paper}

\usepackage[dvips]{graphicx}
\usepackage{pslatex}

\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\headrulewidth}{0pt}
\lhead{}\chead{}\rhead{Introduction to Engineering Design}
\lfoot{}\cfoot{\thepage}\rfoot{}

\usepacakge{sectsty}
\allsectionsfont{\sffamily\mdseries\upshape}

\title{What is \LaTex ?}
\author{2013147549 Geun Ho Lee}
\date{}

\begin{document}
\maketitle

 LaTex is a document preparation system that is most often used for medium-to-large technical or scientific documents. It is not, however, a word processor. It is based on the idea that it would be more efficient for the authors to write their documents and let the document designers to worry about the document design. LaTex consists of several features ranging from typesetting journal articles, technical reports, books, and slide presentations to automatically generating bibliographies and indexes.

 LaTex is based on the TeX typesetting language or certain extensions of it. LaTex was first developed in 1985 by Leslie Lamport and is now maintained and developed by the LaTex3 Project.

 (source: http://latex-project.org/intro.html)

\end{document}

5
Вы можете рассмотреть возможность установки TeXLive пользователем, поскольку версия, предоставляемая вашим менеджером пакетов, насчитывает более шести лет, и многие учебники или фрагменты кода, которые вы можете найти в Интернете, не будут работать с древней версией. Если вам нужно написать только один документ и не использовать его часто, я бы предложил использовать такое веб-приложение, как WriteLaTeX .
Марко

Возможно, вы захотите принять один из ответов, если он ответил на ваш вопрос. Я вижу, вы пытались сделать это, а затем удалили то, что было ответом. Если вы не отметите один из них как принятый, то люди подумают, что ваша проблема все еще не решена, и попытаются оказать дополнительную помощь, поскольку предполагается, что это не так.
SLM

Если вы вставили свой код напрямую, обратите внимание, что у вас есть опечатка: \ gemoetry {a4paper}.
Щайба

Ответы:


14

Вы упускаете некоторые вещи. Это на Fedora, но тот же шаблон должен держаться на CentOS:

> yum whatprovides latex

Loaded plugins: auto-update-debuginfo, langpacks, presto, refresh-packagekit, verify
texlive-latex-2007-70.fc17.x86_64 : The LaTeX front end for the TeX text formatting system
Repo        : fedora
Matched from:
Filename    : /usr/bin/latex

Я не вижу texlive-latexнигде в вашем списке. Тот же пакет упоминается для yum whatprovides pdflatex, так что ...

> yum install texlive-latex

5

Вот несколько решений:

1. Дважды проверьте свой латекс

Латекс показывает ошибки с вашей первой строкой:

\documentclass[pdftex,11pt]{article}

Вы уверены, что pdftexэто правильный вариант? Обычно эти параметры связаны с размером бумаги и макетом. Попробуйте удалить его.

2. Попробуйте «pdflatex»

Я не знаю разницы между pdflatexи, pdftexно из моего опыта, pdflatexгораздо, гораздо чаще используется. Попробуйте yum whatprovides \*pdflatexпосмотреть, какой пакет предоставляет этот двоичный файл (подсказка: это texlive-latex), и установите его. Затем попробуйте запустить бумагу с pdflatex.

3. Попробуйте другой сайт SE

Если вы по-прежнему получаете ошибки из-за латекса pdflatex homework.tex, возможно, зайдите на tex.stackexchange.com и обратитесь за помощью к латексу .


1

Существует большая разница между документом TeX и документом LaTeX, даже если они оба обычно имеют .texрасширения. , Документ начинается с \documentclass[pdftex,11pt] {article}макроса LaTeX и, следовательно, является документом LaTeX и должен обрабатываться с механизмом TeX, в котором загружен формат LaTeX. Обычно pdftexзагружает формат TeX и pdflatexзагружает формат LaTeX. Для debоснованных дистрибутивов (и других) texliveпакет загружает оба формата: TeX и LaTeX (т.е. pdftexи pdflatex), но rpmоснованные дистрибутивы (например, CentOS) поддерживают TeX и LaTeX. Вам нужно загрузить texlive-latexпакет в CentOS, чтобы получить формат LaTeX. Как только он будет загружен, вы сможете pdflatex homeworkбез проблем обойтись .

Стоит отметить, что версия вашего TeXlive от 2007 года, поэтому может быть стоит установить и поддерживать свою собственную версию. Смотрите, например, https://tex.stackexchange.com/a/95373/10038.


1

Вы можете использовать либо, pdftexлибо pdflatexдля создания PDF-файла из вашего TEX-файла. Вы уже установили pdftex. Вывод yumкоманды в основном сообщал вам, что texliveон уже установлен.

Пакет texlive-2007-57.e.16_2.i686 уже установлен и последняя версия

Я бы тоже установил этот пакет:

$ yum install texlive-latex

Вы должны быть либо пользователем root, либо использовать команду sudo yum ...для запуска установки выше.

Использование - pdftex

Если ваш .texфайл правильно отформатирован, то эта команда должна привести к PDF-файлу.

$ pdflatex your.tex

Где your.texнаходится контент, который вы указали в своем вопросе? Если вы попытаетесь использовать эту команду без каких-либо аргументов, вам придется постоянно нажимать клавишу ввода, пока каждая команда не закончит обработку. Нравится:

$ pdftex your.tex 
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 %&-line parsing enabled.
entering extended mode
(./your.tex
! Undefined control sequence.
l.1 \documentclass
                  [pdftex,11pt] {article} \usepackage[utf8] {inputenc}
? 
! Undefined control sequence.
l.1 ...entclass[pdftex,11pt] {article} \usepackage
                                                  [utf8] {inputenc}
? 
...
...
...
! Undefined control sequence.
l.13 \begin{document} \maketitle

? 
[1{/usr/share/texmf/fonts/map/pdftex/updmap/pdftex.map}] )</usr/share/texmf/fon
ts/type1/bluesky/cm/cmr10.pfb>
Output written on your.pdf (1 page, 14865 bytes).
Transcript written on your.log.

Это приведет к прекрасному PDF-файлу your.pdf. При каждой ?подсказке нужно нажимать Enterклавишу.

Образец

    сс pdftex your.pdf

Использование - pdflatex

Вы также можете использовать инструмент pdflatexдля создания PDF-файла.

$ pdflatex your.tex 
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6)
 %&-line parsing enabled.
entering extended mode
(./your.tex
LaTeX2e <2005/12/01>
...
...
l.13 \begin{document} \maketitle

? 
(/usr/share/texmf/tex/latex/psnfss/ot1ptmcm.fd)
(/usr/share/texmf/tex/latex/psnfss/omlptmcm.fd)
(/usr/share/texmf/tex/latex/psnfss/omxpsycm.fd) [2] (./your.aux) ){/usr/share/t
exmf/fonts/enc/dvips/base/8r.enc}</usr/share/texmf/fonts/type1/bluesky/cm/cmr10
.pfb></usr/share/texmf/fonts/type1/urw/times/utmr8a.pfb>
Output written on your.pdf (2 pages, 22454 bytes).
Transcript written on your.log.

Это также приведет к созданию совершенно корректного PDF-файла, но больше похоже на то, что вы хотите от своего .texфайла.

Образец

         сс pdflatex your.pdf

Ваш .tex файл

Я думаю, что ваш файл отформатирован не совсем правильно. Если вы возьмете другой файл, подобный этому, http://www.maths.manchester.ac.uk/~kd/latextut/examex.tex и запустите его pdflatex, он будет работать нормально, без подсказок с ?отметками.


1
Я думаю, yum install texlive-latexдолжно быть больше, чем просто предложение. Я думаю, что это необходимо для компиляции документа LaTeX.
StrongBad
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.