Question sur l'utilisation de pdflatex sur RedHat dans CentOS


8

Je suis novice dans l'utilisation des systèmes Linux.

On m'a donné une mission d'écrire un document en utilisant LaTeX et convertir le fichier dans un fichier pdf à soumettre. J'ai donc essayé d'utiliser mon CentOS pour le faire. La version de mon système Linux est RedHat. Je l'ai regardé façons de convertir le fichier .tex en .pdf sur le web, qui m'a dit d'installer texlive. Alors je l'ai fait.

[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

J'ai donc recherché des moyens de résoudre ce problème et l'un des sites Web a suggéré d'utiliser la rpm -qa | grep texcommande. Mais nulle part je n'ai pu trouver le fichier 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]$ 

C'est ce que j'ai vu en tapant la commande.

Lorsque j'essaie d'utiliser la commande pdflatex, latex ou pdftex, voici ce que j'obtiens.

[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}
?

Je ne vois pas pourquoi mon système ne reconnaîtrait pas contrairement à ce que les autres ont dit.

PS Oh, et juste au cas où, je voulais joindre mon fichier .tex en me demandant si ce que j'avais écrit dans mon fichier était à l'origine du problème.

\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
Vous pouvez envisager une installation utilisateur de TeXLive, car la version fournie par votre gestionnaire de packages a plus de six ans et de nombreux didacticiels ou extraits de code que vous pourriez trouver sur le Web ne fonctionneront pas avec une version ancienne. Si vous n'avez besoin d'écrire qu'un seul document et que vous n'avez pas l'intention de l'utiliser fréquemment, je vous suggère d'utiliser une application Web comme WriteLaTeX .
Marco

Vous voudrez peut-être accepter l'une des réponses si elle répond à votre question. Je vois que vous avez tenté de le faire, puis supprimé ce qui était une réponse. Si vous n'en marquez pas un comme accepté, les gens penseront que votre problème est toujours en suspens et tenteront de fournir une assistance supplémentaire, car on suppose qu'il ne l'a pas été.
slm

Si vous avez directement collé votre code, notez que vous avez une faute de frappe: \ gemoetry {a4paper}.
schaiba

Réponses:


14

Vous manquez des trucs. C'est sur Fedora mais le même schéma devrait tenir sur 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

Je ne vois texlive-latexnulle part dans votre liste. Le même package est mentionné pour yum whatprovides pdflatex, alors ...

> yum install texlive-latex

5

Voici quelques solutions:

1. Revérifiez votre latex

Le latex montre des erreurs avec votre première ligne:

\documentclass[pdftex,11pt]{article}

Êtes-vous sûr que cette pdftexoption est valide? Habituellement, ces options concernent le format et la disposition du papier. Essayez de le supprimer.

2. Essayez «pdflatex»

Je ne connais pas la différence entre pdflatexet pdftexmais d'après mon expérience, pdflatexest beaucoup, beaucoup plus couramment utilisé. Essayez yum whatprovides \*pdflatexde voir quel package fournit ce binaire (indice: c'est texlive-latex) et installez-le. Essayez ensuite d'exécuter votre document avec pdflatex.

3. Essayez un autre site SE

Si vous obtenez toujours des erreurs de latex après l'exécution pdflatex homework.tex, rendez-vous sur tex.stackexchange.com pour demander de l'aide sur le latex.


1

Il y a une grande différence entre un document TeX et un document LaTeX même s'ils sont généralement tous deux dotés d' .texextensions. . Votre document commence par \documentclass[pdftex,11pt] {article}qui est une macro LaTeX et est donc un document LaTeX et doit être traité avec un moteur TeX qui a le format LaTeX chargé. Charge généralement pdftexle format TeX et pdflatexcharge le format LaTeX. Pour les debdistributions basées (et autres), le texlivepackage charge les formats TeX et LaTeX (c'est-à-dire, pdftexet pdflatex), mais la prise en charge des rpmdistributions basées (comme CentOS) TeX et LaTeX est divisée. Vous devez charger le texlive-latexpackage dans CentOS pour obtenir le format LaTeX. Une fois qu'il est chargé, vous devriez pouvoir le faire pdflatex homeworksans aucun problème.

Il convient de noter que la version de votre TeXlive date de 2007, il peut donc être utile d'installer et de maintenir votre propre version. Voir par exemple https://tex.stackexchange.com/a/95373/10038


1

Vous pouvez utiliser soit pdftexou pdflatexpour générer un fichier PDF à partir de votre fichier TEX. Vous avez déjà installé pdftex. La sortie de la yumcommande vous indiquait essentiellement qu'elle texliveétait déjà installée.

Package texlive-2007-57.e.16_2.i686 déjà installé et dernière version

J'installerais aussi ce paquet:

$ yum install texlive-latex

Vous devez être l'utilisateur root ou utiliser la commande sudo yum ...pour exécuter l'installation ci-dessus.

Utilisation - pdftex

Si votre .texfichier est correctement formaté, cette commande devrait générer un fichier PDF.

$ pdflatex your.tex

your.texest le contenu que vous avez fourni dans votre question. Si vous essayez d'utiliser cette commande sans aucun argument, vous devrez continuellement appuyer sur la touche Entrée jusqu'à ce que chaque commande ait terminé le traitement. Comme ça:

$ 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.

Cela se traduira par un fichier PDF parfaitement bien, your.pdf. À chaque ?invite, vous devez appuyer sur la Entertouche.

Échantillon

    ss de pdftex your.pdf

Utilisation - pdflatex

Vous pouvez également utiliser l'outil pdflatexpour générer le fichier 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.

Cela se traduira également par un fichier PDF parfaitement valide, mais ressemble plus à ce que vous attendez de votre .texfichier.

Échantillon

         ss de pdflatex votre.pdf

Votre fichier .tex

Je pense que votre fichier n'est pas formaté correctement. Si vous prenez un autre fichier comme celui-ci, http://www.maths.manchester.ac.uk/~kd/latextut/examex.tex , et l'exécutez pdflatex, cela fonctionne très bien sans me demander les ?marques.


1
Je pense que cela yum install texlive-latexdevrait être plus qu'une simple suggestion. Je pense qu'il est nécessaire de compiler un document LaTeX.
StrongBad
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.