Основной файл:
\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}
Я составил его следующим образом:
$pdflatex master.tex
=> idx
Создан пустой файл
$makeindex master.idx
Это makeindex, версия 2.15 [TeX Live 2012] (kpathsea + поддержка Thai). Сканирование входного файла master.idx...выполнено (принято 0 записей, отклонено 0). Ничего не написано в master.ind. Транскрипт написан в master.ilg.
$pdflatex master.tex
Вывод: PDF БЕЗ индекса.
Я компилирую из командной строки, используя pdflatex
(не используйте, latex
чтобы избежать проблем с упаковкой графики)
Пожалуйста, помогите мне разобраться в этом вопросе.
решение1
(Просто чтобы закончить эту тему:) В вашем MWE было две проблемы:
- Я не вижу, что вы загружаете пакет
makeidx
. Кажется, вы загружаете его вmystyle.sty
(ваше цитируемое сообщение говорит об этом). \index{...}
Как упомянул Хайко, в вашем MWE нет макросов .
Реально работающий MWE для вашего случая будет выглядеть так:
%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}
в результате теперь все работает. Создание такого MWE самостоятельно очень поможет вам узнать, как работает TeX/LaTeX. Надеюсь, это вам поможет.
решение2
при вызове makeindex
из TexnicCenter у меня было то же самое сообщение об ошибке. Он отобразил mydocument.idx
пустой файл, созданный при запуске LaTeX, и впоследствии не нашел никаких записей и не выдал никаких выходных данных. Я нашел номенклатуры там, mydocument.nlo
где им и положено быть. Поэтому makeindex
просто взял неправильный входной файл и, следовательно, не выдал никаких выходных данных, потому что он был пуст.
Поэтому вам придется вызывать его makeindex
самостоятельно через командное окно в Windows (cmd). Вам нужно перейти в каталог, где лежит ваш документ (с cd
...) Затем просто запустить
makeindex <filename>.nlo -s nomencl.ist -o <filename>.nls
И действительно makeindex
создает выходной файл mydocuemnt.nls
.
При повторном запуске LaTeX найдет mydocument.nls
и выдаст список номенклатуры.