我正在尝试使用makeglossaries
Fedora 生成词汇表。我还安装了clisp
相关软件包。但我收到以下错误:
$ makeglossaries HistoryNotes
makeglossaries version 2.19 (2016-05-27)
added glossary type 'main' (glg,gls,glo)
xindy -L english -C utf8 -I xindy -M "HistoryNotes" -t "HistoryNotes.glg" -o "HistoryNotes.gls" "HistoryNotes.glo"
/usr/lib64/clisp-2.49+/base/lisp.run: initialization file `/usr/bin/xindy.mem' was not created by this version of CLISP runtime
***Call to xindy failed***
Check 'HistoryNotes.glg' for details
我认为错误与我的.tex
文件无关,而与 的打包有关texlive-xindy-*
。
\documentclass[10pt,a4paper]{book}
\usepackage[utf8]{inputenc}
\usepackage[british]{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{csquotes}
\usepackage[T1]{fontenc}
\usepackage[bookmarks]{hyperref}
\usepackage[xindy,toc]{glossaries}
\makeglossaries
\usepackage[xindy]{imakeidx}
\makeindex
\usepackage{enumitem}
\usepackage{bbm}
\usepackage{color}
\usepackage{blindtext}
\usepackage[explicit]{titlesec}
\usepackage[round]{natbib}
\begin{document}
[...]
\newglossaryentry{computer}
{
name=computer,
description={is a programmable machine that receives input,
stores and manipulates data, and provides
output in a useful format}
}
\printindex
\glsaddall
\printglossary[title=List of Terms,toctitle=Terms and abbreviations]
\nocite{*}
\bibliographystyle{plainnat}
\bibliography{History}
\addcontentsline{toc}{chapter}{Bibliography}
\end{document}
如果我执行xindy --version
,我会得到:
$ xindy --version
xindy release: 2.5.1
xindy script version: 1.18
/usr/lib64/clisp-2.49+/base/lisp.run: initialization file `/usr/bin/xindy.mem' was not created by this version of CLISP runtime
答案1
这个包裹texlive-xindy
肯定有问题。
解决方案
删除标准包
下载源代码并编译:
wget http://mirrors.ctan.org/indexing/xindy/base/xindy-2.5.1.tar.gz tar zxf xindy-2.5.1.tar.gz cd xindy-2.5.1 ./configure make sudo make install
答案2
问题在于该包texlive-xindy
所需的版本clisp
与标准包提供的版本不同clisp
,因此必须重建。
另一种方法是@LiPo是从存储库提供的源重建包。可以使用以下步骤完成此操作:
删除包
texlive-xindy
sudo rpm -e --nodeps texlive-xindy
下载源码包
dnf download --source texlive-xindy
安装依赖项
sudo dnf builddep texlive
重建包
rpmbuild --rebuild texlive-<version details>.fc<fedora version>.src.rpm
注意
<version detaills>
和<fedora version>
应该根据下载的文件进行更改安装重建的包
sudo dnf install ~/rpmbuild/RPMS/noarch/texlive-xindy-bin-<package details>.fc<fedora version>.1.noarch.rpm
请注意,
<package detaills>
和<fedora version>
应根据生成的包文件进行更改。另请注意,可以通过向包生成命令添加参数来更改包文件的位置。
上述步骤适用于 Fedora,对于其他发行版,命令会有所不同,但应该存在类似的工作流程。