2010-03-17 24 views
52

Estoy escribiendo mi tesis de látex, y tengo las referencias en el propio archivo thesis.bib que se ven de la siguiente maneraCompilación LaTex fuente babero

@Article{xxx, 
    author =  "D.A. Reinhard", 
    title =  "Case Study", 
    year =   "1985", 
} 

y que hacen referencia a ellos en mi documento principal como ~ \ cite {xxx}

Cuando compilo el documento principal con: pdflatex main.tex que me muestra signos de interrogación en lugar de las referencias adecuadas a la bibliografía. ¿También necesito compilar la fuente del babero por sí mismo? Si es así, ¿alguien puede por favor decirme el comando para Linux

Muchas gracias!

Respuesta

17

tiene que ejecutar 'bibtex':

latex paper.tex 
bibtex paper 
latex paper.tex 
latex paper.tex 
dvipdf paper.dvi 
70

Es necesario compilar el archivo bibtex.

Supongamos que tiene article.tex y article.bib. Tiene que ejecutar:

  • latex article.tex (esto generará un documento con signos de interrogación en lugar de referencias desconocidos)
  • bibtex article (esto va a analizar todos los archivos .bib que se incluyeron en el artículo y generar meta-información con respecto referencias)
  • latex article.tex (este documento va a generar con todas las referencias en los lugares correctos)
  • latex article.tex (sólo en caso de si las referencias añadiendo rompieron la numeración de páginas en alguna parte)
+4

Además, considere usar latex mk (http://www.phys.psu.edu/~collins/software/latexmk-jcc/), un programa perl que ejecuta automáticamente lo que sea necesario (latex, bibtex, makeindex, etc. .) en el orden correcto para producir un documento final actualizado cada vez que cambie algo. – rcollyer

+1

Recomiendo fuertemente la recomendación de latexmk. No podría vivir sin él :) –

+0

He editado esta respuesta porque el comando bibtex no permite una extensión. (y la extensión sería ".aux" no ".tex" aunque fuera) –

11

Estoy usando texmaker como editor. debe compilar en el terminal de la siguiente manera:

  1. pdflatex nombre (con o sin extensiones)
  2. bibtex nombre (sin extensiones)
  3. pdflatex nombre (con o sin extensiones)
  4. pdflatex nombre de archivo (con o sin extensiones)

pero a veces, cuando usa \citep{}, los nombres de las referencias no aparecen. En este caso, tuve que abrir el archivo references.bib, para que texmaker pudiera capturar las referencias del archivo references.bib. ¡Después de cada edición del archivo bib, tuve que cerrarlo y volver a abrirlo! Para que el fabricante de textos pueda capturar el contenido del nuevo archivo .bbl cada vez. Pero recuerde, también debe ejecutar su código en texmaker también.

3

Solo en caso de que ayude a alguien, ya que estas preguntas (y respuestas) me ayudaron mucho; Decidí crear un alias que se ejecuta estos 4 órdenes consecutivas:

Apenas añada la siguiente línea a su archivo ~/.bashrc (modificar la palabra clave main en consecuencia para el nombre de sus .tex y .bib archivos)

alias texbib = 'pdflatex main.tex && bibtex main && pdflatex main.tex && pdflatex main.tex' 

Y ahora, al ejecutar solo el comando texbib (alias), todos estos comandos se ejecutarán secuencialmente.

Cuestiones relacionadas