PDFLatex: Não é possível gerar índice

PDFLatex: Não é possível gerar índice

Arquivo mestre:

\documentclass[dvipsnames,cmyk]{book}

% File Containing All the Control Settings
\usepackage{../../Style/mystyle}
\makeindex

\begin{document}

% Front Cover
\include {Front_Cover/frontcover}


% Chapters
\include {Chapters/CH_Analysis_of_Algorithms/Analysis_of_Algorithms}
\include {Chapters/CH_Abstract_Data_Types/Abstract_Data_Types}
\include {Chapters/CH_Arrays/Arrays}
\include {Chapters/CH_Linked_Lists/Linked_Lists}
\include {Chapters/CH_Stacks/Stacks}
\include  {Bibliography/biblio}

% Index
\printindex
\end{document}

Eu compilei da seguinte forma:

$pdflatex master.tex

=> idxArquivo vazio gerado

$makeindex master.idx

Este é o makeindex, versão 2.15 [TeX Live 2012] (suporte para kpathsea + tailandês). Verificação do arquivo de entrada master.idx...concluído (0 entradas aceitas, 0 rejeitadas). Nada escrito em master.ind. Transcrição escrita em master.ilg.

$pdflatex master.tex

Saída: PDF sem índice.

Estou compilando a partir da linha de comando usando pdflatex(não use latexpara evitar problemas de boxe com gráficos)

Por favor, me oriente sobre este assunto.

Responder1

(Só para encerrar isso:) Em seu MWE havia dois problemas:

  1. Não consigo ver que você carrega package makeidx. Parece que você o carregou mystyle.sty(sua mensagem citada informa isso).
  2. Como Heiko mencionou, você não possui macros \index{...}em seu MWE.

Um MWE real e funcional para o seu caso seria assim:

%http://tex.stackexchange.com/questions/68538/pdflatex-unable-to-generate-index
\documentclass{book}

\usepackage{makeidx}   % load package
\makeindex             % make file(s) *.idx

\begin{document}
Test\index{Test} Text\index{Text|textbf}

\printindex            % print index here
\end{document}

com o resultado, que tudo está funcionando agora. Construir esse MWE por conta própria ajuda muito a aprender como o TeX/LaTeX está funcionando. Espero que isso ajude você.

Responder2

ao invocar makeindexdo TexnicCenter recebi a mesma mensagem de erro. Ele rastreou mydocument.idxqual era um arquivo vazio criado ao executar o LaTeX e posteriormente não encontrou nenhuma entrada e não produziu nenhuma saída. Encontrei as nomenclaturas mydocument.nloonde deveriam estar. Então makeindexpeguei o arquivo de entrada errado e, conseqüentemente, não produzi nenhuma saída porque estava vazio.

Então você tem que invocar makeindexpor conta própria através da janela de comando no Windows (cmd). Você tem que ir no diretório onde está o seu documento (com cd...) Depois é só executar

makeindex <filename>.nlo -s nomencl.ist -o <filename>.nls

E de fato makeindexcria o arquivo de saída mydocuemnt.nls.

Quando você executar o LaTeX novamente, ele encontrará mydocument.nlse produzirá a lista de nomenclaturas.

informação relacionada