Fedora 上的 Latex:Xindy 词汇表

Fedora 上的 Latex:Xindy 词汇表

我正在尝试使用makeglossariesFedora 生成词汇表。我还安装了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肯定有问题。

解决方案

  1. 删除标准包

  2. 下载源代码并编译:

    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是从存储库提供的源重建包。可以使用以下步骤完成此操作:

  1. 删除包texlive-xindy

    sudo rpm -e --nodeps texlive-xindy
    
  2. 下载源码包

    dnf download --source texlive-xindy
    
  3. 安装依赖项

    sudo dnf builddep texlive
    
  4. 重建包

    rpmbuild --rebuild texlive-<version details>.fc<fedora version>.src.rpm 
    

    注意<version detaills><fedora version>应该根据下载的文件进行更改

  5. 安装重建的包

     sudo dnf install ~/rpmbuild/RPMS/noarch/texlive-xindy-bin-<package details>.fc<fedora version>.1.noarch.rpm 
    

    请注意,<package detaills><fedora version>应根据生成的包文件进行更改。另请注意,可以通过向包生成命令添加参数来更改包文件的位置。

上述步骤适用于 Fedora,对于其他发行版,命令会有所不同,但应该存在类似的工作流程。

相关内容