Domanda sull'utilizzo di pdflatex su RedHat in CentOS


8

Sono un principiante nell'uso dei sistemi Linux.

Mi è stato assegnato il compito di scrivere un documento usando LaTeX e di convertire il file in un file pdf da inviare. Quindi ho provato a usare il mio CentOS per farlo. La versione del mio sistema Linux è RedHat. Ho cercato modi per convertire i file .tex in .pdf sul web, che mi hanno detto di installare texlive. Così l'ho fatto.

[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

Quindi ho cercato i modi per risolvere questo problema e uno dei siti web ha suggerito di usare rpm -qa | grep texcommand. Ma da nessuna parte posso trovare il file 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]$ 

Questo è quello che ho visto quando ho digitato il comando.

Quando provo ad usare il comando pdflatex, latex o pdftex, questo è quello che ottengo.

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

Non vedo perché il mio sistema non riconoscerebbe diversamente da come gli altri hanno detto.

PS Oh, e per ogni evenienza, volevo allegare il mio file .tex chiedendomi se ciò che avevo scritto nel mio file stava creando il problema.

\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
Potresti considerare l'installazione di TeXLive da parte dell'utente, poiché la versione fornita dal gestore pacchetti ha più di sei anni e molti tutorial o frammenti di codice che potresti trovare sul Web non funzioneranno con una versione antica. Se hai solo bisogno di scrivere un documento e non intendi utilizzarlo di frequente, ti suggerisco di utilizzare un'applicazione web come WriteLaTeX .
Marco,

Potresti voler accettare una delle risposte se ha risposto alla tua domanda. Vedo che hai provato a farlo e poi hai cancellato quella che era una risposta. Se non lo contrassegni come accettato, le persone penseranno che il problema sia ancora in sospeso e tenteranno di fornire ulteriore assistenza, poiché si presume che non lo sia stato.
slm

Se hai incollato direttamente il tuo codice, nota che hai un refuso: \ gemoetry {a4paper}.
schaiba,

Risposte:


14

Ti stai perdendo qualcosa. Questo è su Fedora ma lo stesso schema dovrebbe valere per 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

Non vedo da texlive-latexnessuna parte nella tua lista. Lo stesso pacchetto è menzionato per yum whatprovides pdflatex, quindi ...

> yum install texlive-latex

5

Ecco alcune soluzioni:

1. Ricontrolla il tuo lattice

Il lattice mostra errori con la prima riga:

\documentclass[pdftex,11pt]{article}

Sei sicuro che pdftexsia un'opzione valida lì? Di solito queste opzioni hanno a che fare con il formato e il layout della carta. Prova a rimuoverlo.

2. Prova "pdflatex"

Non conosco la differenza tra pdflatexe pdftexma dalla mia esperienza, pdflatexè molto, molto più comunemente usato. Prova yum whatprovides \*pdflatexa vedere quale pacchetto fornisce quel file binario (suggerimento: è texlive-latex) e installalo. Quindi, prova invece a far funzionare la tua carta pdflatex.

3. Prova un altro sito SE

Se dopo l'esecuzione hai ancora errori di lattice pdflatex homework.tex, vai a tex.stackexchange.com per cercare assistenza relativa al lattice.


1

Esiste una grande differenza tra un documento TeX e un documento LaTeX anche se entrambi sono in genere dotati di .texestensioni. . Il documento inizia con \documentclass[pdftex,11pt] {article}quale è una macro LaTeX ed è quindi un documento LaTeX e deve essere elaborato con un motore TeX con il formato LaTeX caricato. pdftexCarica in genere il formato TeX e pdflatexcarica il formato LaTeX. Per le debdistribuzioni basate (e altre) il texlivepacchetto carica sia i formati TeX che LaTeX (ie, pdftexe pdflatex), ma le rpmdistribuzioni basate (come CentOS) TeX e il supporto LaTeX sono divisi. È necessario caricare il texlive-latexpacchetto in CentOS per ottenere il formato LaTeX. Una volta caricato, dovresti essere in grado di fare pdflatex homeworksenza problemi.

Vale la pena notare che la versione di TeXlive è del 2007, quindi potrebbe valere la pena installare e mantenere la propria versione. Vedi ad esempio https://tex.stackexchange.com/a/95373/10038


1

È possibile utilizzare pdftexo pdflatexper generare un file PDF dal file TEX. PDFtex è già installato. L'output del yumcomando sostanzialmente diceva che texliveera già installato.

Pacchetto texlive-2007-57.e.16_2.i686 già installato e versione più recente

Vorrei installare anche questo pacchetto:

$ yum install texlive-latex

Devi essere l'utente root o utilizzare il comando sudo yum ...per eseguire l'installazione sopra.

Utilizzo - pdftex

Se il .texfile è formattato correttamente, questo comando dovrebbe generare un file PDF.

$ pdflatex your.tex

Dov'è your.texil contenuto che hai fornito nella tua domanda. Se si tenta di utilizzare questo comando senza argomenti, è necessario continuare a premere il tasto Invio fino a quando ciascun comando non ha terminato l'elaborazione. Come questo:

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

Questo si tradurrà in un file PDF perfettamente bene, your.pdf. Ad ogni ?richiesta è necessario premere il Entertasto.

Campione

    ss di pdftex your.pdf

Utilizzo - pdflatex

Puoi anche usare lo strumento pdflatexper generare il file 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.

Anche questo si tradurrà in un file PDF perfettamente valido, ma assomiglia di più a quello che vorresti dal tuo .texfile.

Campione

         ss di pdflatex your.pdf

Il tuo file .tex

Penso che il tuo file non sia formattato correttamente. Se prendi un altro file come questo, http://www.maths.manchester.ac.uk/~kd/latextut/examex.tex , e lo esegui pdflatex, funziona benissimo senza chiedermi i ?segni.


1
Penso che yum install texlive-latexdovrebbe essere più di un semplice suggerimento. Penso che sia necessario compilare un documento LaTeX.
StrongBad,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.