I use Jabref to manage my bibliography database. I also use it with LyX and it's running well.

But now I need to use it with MiKTeX and use TeXmaker as an editor. Using my MiKTeX settings I'm trying to tell the MiKTeX to add a root, where the `.bib` file created by Jabref is stored.

But I got an error message "Not a TDS-compliant root directory". Could anyone help me why I got the error message?

-
I don't really see where the problem might be... Could you just put the .bib file in the same directory than the .tex file? –  Martigan Jun 15 '11 at 9:56

The proper TDS-compliant setup is as shown below. Make a directory, say `c:\mytexmf` and put your bibtex files in `c:\mytexmf\bibtex\bib\mypackages\...`

Add your local texmf directory to the latex search path by declaring it in MiKTeX:

`Start -> All programs -> MikTeX -> maintenance -> Setup`

Under the tab `Roots` add the path, say `c:\mytexmf` and under the tab `general` update the file name data base. Now latex will find your file.

The advantage of this setup is that you can add any package that is tds compliant to your local texmf tree and after updating the file name database it can be used by latex.

-
This is a better answer than mine, but touching the system partition's root is bad practice. Even in some environments it's impossible. –  Karl Karlsson Jun 15 '11 at 11:11
@Karl Karlsson: Why is putting stuff in the root bad practice? If you have access to the root in windows, then I will say put it there, because there are a lot of TeX helper programs that do not like spaces in directory names (some commentors calls it the root of all evil in windows) –  Danie Els Jun 15 '11 at 11:33
Because a good security policy prohibits touching places where critical system files may reside. A critical system file may be damaged or deleted by mistake. NTFS file system is UTF16 compliant from the beginning of the 90-ties. So I call the spacing problem of these tools - the outdated UNIX stuff from the 70-ties (or may be even 60-ties?). And equally, touching the root in Linux/Unix isn't welcome. –  Karl Karlsson Jun 15 '11 at 11:47
Many thanks in advance, I have solved the problem. Jabref only compatible with LaTeX Editor LED. I use Texmaker, so I couldn't use Jabref. –  Verly Jul 4 '11 at 8:16
@DanieEls: where does the grafic with the texmf tree comes from? –  Kurt Sep 20 '12 at 17:09

(1) Putting the `bib` file along with the rest of the project helped me.

(2) I could also give relative path like `../../myreferences/mylibrary` where the file `mylibrary.bib` was placed two levels above the current folder

(3) Most of the problems could be solved by deleting the `mylibrary.bbl` file in the project folder and recompiling

-
1. Simple answer: Place your `bib` file in the folder where your `tex` files are located.
`\Miktex\bibtex\bib\mybibs`
And place your `bib` files in this folder. The root folder `\Miktex` can be placed anywhere you want.
bib-files don't belong in `<root>\tex\latex`, they belong in `root\bibtex\bib`. And in miktex is it in general best to add an additional layer. So in this case I would use `<root>\bibtex\bib\mybibs` –  Ulrike Fischer Jun 15 '11 at 11:04