#319 Include xindy in miktex (with detailed up-to-date installation advice)

None
open
None
1
2014-06-30
2014-04-17
U_Fischer
No

Until a few days the perl script in xindy did contain hard-coded pathes pointing (only) to the binary folder of tex live and so couldn't be used without manual changes in miktex. Also xindy was dependant on a kpathsea dll.

With the help of Joachim Schrod, Akira Kakuto and Peter Breitenlohner this has changed. The perl script now contains also the miktex bin pathes. And the dependancy to kpathsea has been removed. So please include xindy as a miktex package.

Installation

  1. Get xindy-w32.tar.xz from one server of www.w32tex.org. E.g. from http://ftp.kddilabs.jp/TeX/ptex-win32/current/.
    Make sure that the date of the file is 16.4.2014 or later. tex2xindy.exe in the bin folder should have a date of 14.4.2014 or later.

  2. Unpack. You get a bin folder and a share/texmf-dist folder.

  3. From the bin folder copy
    tex2xindy.exe, xindy.mem, xindy-list.exe to <maintexmf>/miktex/bin

xindy.exe, texindy.exe and the two dlls are not needed.

  1. From the share/texmf-dist folder
    a) copy the content of doc/xindy to <maintexmf>/doc/xindy

b) copy the content of the folder xindy (the modules) to <maintexmf>/xindy

c) copy the two perl scripts in scripts/xindy to <maintexmf>/scripts/xindy/

  1. Create in miktex/bin two wrappers xindy.exe and texindy.exe which calls the perl scripts xindy.pl and texindy.pl. (I used .bat-files for the tests instead).

  2. Test: Run the following document with
    pdflatex --shell-escape

    \documentclass[11pt]{article}
    \usepackage[T1]{fontenc}
    \usepackage[xindy]{imakeidx}
    \makeindex

    \begin{document}
    All\index{All}, Apple\index{Apple}, Ball\index{Ball}, Small\index{Small}, Zoo\index{Zoo}

    \printindex
    \end{document}

Remarks:
1. If you get complains that kpathsea620.dll could not be found then tex2xindy is too old.
2. xindy.pl must be able to find xindy.mem and xindy-lisp and tex2xindy.exe and the modules. So the perl script must be in the same texmf tree as the binaries and the xindy/module folder.
3. I tested this on a windows 7 PC with a single user installation of miktex 2.9.

Ulrike Fischer

Discussion

  • U_Fischer
    U_Fischer
    2014-04-22

    Additional informations: The new xindy source with the changes for miktex are now also on CTAN. Also

    "Current sources are available from CTAN as tar.gz, and also from
    Github, at https://github.com/jschrod/xindy.ctan

    CTAN should be taken as authorative if there are any differences."

    I don't know how the windows-(w32tex-)binaries are created from this sources.

    Sorry for the messed up numeration in the feature request. I forgot that markdown would interfere.

    Ulrike Fischer

     
    • assigned_to: Christian Schenk
    • Group: -->
     
  • Thank you for the recipe. I will create the miktex-xindy-bin package asap.

     
  • U_Fischer
    U_Fischer
    2014-06-17

    Additional remark: Sometime after the 16.4. a xindy package was created (which got also in texlive 2014) where the libiconv-2.dll was not statically linked. So xindy-lisp.exe failed on systems without this .dll. From today (17.6.2014) on the problem has been corrected. A new version can be found here
    http://ctan.ijs.si/mirror/w32tex/current/xindy-w32.tar.xz

     
  • U_Fischer
    U_Fischer
    2014-06-30

    From a discussion I learned that the 64bit-miktex puts its binaries not in miktex/bin but miktex/bin/x64. If you confirm this then I will ask the xindy maintainer to add this path too to xindy.pl. But I don't know nor can I test if it is a problem to put xindy-lisp.exe and xindy.mem in sich a 64bit folder.