After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 751300 - Doxygen don't support longer key in bibtex
Doxygen don't support longer key in bibtex
Status: RESOLVED FIXED
Product: doxygen
Classification: Other
Component: general
1.8.9.1
Other All
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
Depends on:
Blocks:
 
 
Reported: 2015-06-21 22:02 UTC by zheng.bangyou
Modified: 2016-09-12 16:39 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Minimum working example for issue with citing (1.8.11 Windows) (291.94 KB, application/zip)
2016-09-05 10:23 UTC, Johannes Rieke
Details

Description zheng.bangyou 2015-06-21 22:02:48 UTC
See here for details about this bug: http://stackoverflow.com/questions/30860199

Just summarized it here.

Doxygen will give a warning message "does not have an associated number" when keys in bibtex are longer than 19 characters. For example

bib file:

	@incollection{mcmaster_phenology_,
		title = {The {DSSAT} cropping system model},
		volume = {18},
		journaltitle = {European Journal of Agronomy},
		author = {A, F.},
	}

	@article{mcmaster_phenology_1,
		title = {The {DSSAT} cropping system model},
		volume = {18},
		journaltitle = {European Journal of Agronomy},
		author = {A, F.},
	}

source codes:

	namespace Test
	{
		/// <summary>
		/// A test class
		/// </summary>
		/// <remarks>
		/// This is test citation, see \cite mcmaster_phenology_ and 
		/// \cite mcmaster_phenology_1.
		/// </remarks>
		public class TestClass
		{
		}

	}
Comment 1 albert 2015-07-01 13:44:49 UTC
Comment copied regarding investigations done:

	
I've did some tests and it looks indeed that doxygen.bst (called from bib2xhtml.pl) causes the problem. bibtex is called here and the .aux file for the bibtex call is OK but the resulting .bbl file is wrong. Unfortunately I've not been able to spot the problem
Comment 2 Dimitri van Heesch 2015-07-19 12:05:43 UTC
Confirmed. Should be fixed in the next GIT update.
Comment 3 Tim Janik 2015-11-01 00:52:05 UTC
(In reply to Dimitri van Heesch from comment #2)
> Confirmed. Should be fixed in the next GIT update.

Is there a workaround for this Dimitri?

I'm also seeing the error for much shorter keys after switching to 1.8.9.1, e.g.:
/randomhash.hh:86: warning: \cite command to 'Fips202' does not have an associated number
/randomhash.hh:102: warning: \cite command to 'Keccak11' does not have an associated number
Comment 4 Dimitri van Heesch 2015-12-30 10:19:13 UTC
This bug was previously marked ASSIGNED, which means it should be fixed in
doxygen version 1.8.11. Please verify if this is indeed the case. Reopen the
bug if you think it is not fixed and please include any additional information 
that you think can be relevant (preferably in the form of a self-contained example).
Comment 5 Johannes Rieke 2016-07-15 07:53:06 UTC
Deall all,

I've encountered still an issue in 1.8.11 on Windows 7 x64 with MikTex 2.9 x64 in a Fortran project. It is nearly the same as in the post from Tim Janik.

The Fortran code line is:
!!@cite Piegl1996

The bibtex entry looks like:
@Book{Piegl1996,
  title     = {The NURBS Book},
  publisher = {Springer},
  year      = {1996},
  author    = {L. Piegl and W. Tiller},
  file      = {:Buecher\\THE NURBS BOOK.pdf:PDF},
  owner     = {RiekeJ},
  timestamp = {2016.07.14},
}

The warning from doxygen looks like:
warning: \cite command to 'Piegl1996' does not have an associated number

There is an *.bib file generated in the doxygen generated latex subfolder, but I have not seen an *.aux or *.bbl file. The generated *.bib looks normal.

I tried the same thing in Linux Mint 17.3 with texlive (TeX 3.1415926 (TeX Live 2013/Debian)) and doxygen 1.8.7. The same code works without any issues.

Any hints, how to solve this in Windows with 1.8.11?
Comment 6 albert 2016-08-21 16:54:56 UTC
Johannes Rieke made a comment about a problem, but didn't set the issue back to reopened.
Comment 7 albert 2016-08-21 16:57:48 UTC
I've tried to reproduce the problem with but was not able to. I didn't see any warning message.

Can you please attach a (small) self-contained example (source+config file in a tar or zip) that allows us to reproduce the problem?
Comment 8 Johannes Rieke 2016-09-05 10:23:04 UTC
Created attachment 334780 [details]
Minimum working example for issue with citing (1.8.11 Windows)

Dear all,

Thanks for the feedback and sorry for the delay from my side, I was in vacation.

This is a minimum working example to show up the issue, when citing within Fortran source code. Hopefully this works for you.

kind regards, Johannes
Comment 9 albert 2016-09-11 15:52:32 UTC
With the attached example I still cannot reproduce the problem, so my guess is that it is a system dependent problem, i.e. the perl is not installed on the system or perl has not been added, correctly, to the PATH
In the log file I see:
error: Problems running bibtex. Verify that the command 'perl --version' works from the command line. Exit code: 1

Furthermore I think doxygen is not run from a terminal window but from one or another GUI.

Some questions:
- Can you run doxygen directly from a terminal window and what is the output
- what is the output of the command: perl --version
- what is the output of the command: where perl
- what is the output of the command: echo %PATH%
Comment 10 Johannes Rieke 2016-09-12 09:07:12 UTC
Dear Albert,

mea culpa. It was a Problem on my system. The path variable was too long and the perl path was corrupted. I had to uninstall some not needed programs (older MPI versions) to correct this. Now citing works great! No error or issue with Doxygen. Very nice!
However, all the other stuff of Doxygen was running fine without Perl present. Is there a way to avoid the dependency to Perl in this certain case?

Best regard, Johannes
Comment 11 albert 2016-09-12 16:39:01 UTC
For the translation of the bibtex information perl is required.