Sign up ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

The problem: After modifying the xypic directory in windows, adding a new version that now accepts an option \usepackage{barr} that loads a new file xybarr (formerly diagxy and distributed by me) I am trying to get the new program added to the filename database.

When I run mktexlsr, I get the messages:

Creating fndb for user root directory (C:\Users\Mike\AppData\Roaming\MiKTeX\2.8)...
Creating fndb for user root directory (C:\Users\Mike\AppData\Local\MiKTeX\2.8)...
Skipping common root directory (C:\ProgramData\MiKTeX\2.8)...
Skipping common root directory ("C:\MiKTeX 2.8")...

But my file is precisely in the last named directory. Actually, I was unaware that the other three existed. I tried running maketexlsr -help and got the message:

initexmf: -help: unknown option

Finally, I tried mktexlsr "\miktex 2.8" and got the message:

initexmf: This utility does not accept non-option arguments.

So there is no (discernible) help, and I know no way of forcing it to index the actual tex directory, is there any way of updating the fndb? Incidentally, going to the maintenance routine of MiKTeX has no effect either. I click on update fndb and it says ok, but there is no change.

So is there any way to deal with this?

share|improve this question
As I already wrote as answer to your question on the mailing list: If you put files in one of the roots managed by the admin (which is not recommended) you must use the admin version of the tools (on the command line that means add the option --admin) to update the FNDB. – Ulrike Fischer Oct 6 '13 at 16:10
BTW the syntax is initexmf --help with 2 slashes (and mktexlsr is just an alias). – Speravir Oct 8 '13 at 23:42

1 Answer 1

You should update to the current MiKTeX 2.9.

Is your "xypic directory in windows" part of the system TeXMF tree or part of your local TeXMF tree?

To be able to update the FNDB, MiKTeX needs to be able to find the new files. Thats the reason why there is a system TeXMF tree, you can use one ore more local TeXMF trees and MiKTeX searches only there to build a new FNDB. (More to use a local TeXMF tree see Create a local texmf tree in MiKTeX)

Use the package manager of MiKTeX to install new packages. If that is not possible, copy all new files in a local TeXMF (MiKTeX must know it) and call Settings to click on Update formats and FNDB. You find Settings with: Windows-Start -- all programms -- MiKTeX 2.9 -- Maintanance (Admin) -- Settings (admin)

Important for the local texmf tree is that you use the predefined structure of an TeXMF tree. For example c:\localtexmf\tex\latex\myclass for tex or cls files, c:\localtexmf\bibtex\bst\myclass for my special bst file for BibTeX and so on.

share|improve this answer
There is only one miktex tree, c:\miktex 2.8. I copied the new version on top of the older one and the only obvious difference in the list of file names is the one I referred to. I did the start --- settings business and clicked on update FNDB and it had 0 effect. I also ran mktexlsr and it skipped the main tree. – Michael Barr Oct 5 '13 at 19:14

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.