TeX - LaTeX Asked by user6875880 on May 13, 2021
I found a lot of posts about the same problem but none could help. Can you please help me figure out why I am getting this error? I am using: IEEEtran.bst
and IEEEtran.cls
. Both of those files and the main .tex file and the references.bib
are in one folder. When I try to compile my script, I get this error:
test.bbl(24): Error: LaTeX Error: Something's wrong--perhaps a missing item.
Here is test.bbl
:
% Generated by IEEEtran.bst, version: 1.12 (2007/01/11)
begin{thebibliography}{}
providecommand{url}[1]{#1}
csname url@samestyleendcsname
providecommand{newblock}{relax}
providecommand{bibinfo}[2]{#2}
providecommand{BIBentrySTDinterwordspacing}{spaceskip=0ptrelax}
providecommand{BIBentryALTinterwordstretchfactor}{4}
providecommand{BIBentryALTinterwordspacing}{spaceskip=fontdimen2font plus
BIBentryALTinterwordstretchfactorfontdimen3font minus
fontdimen4fontrelax}
providecommand{BIBforeignlanguage}[2]{{%
expandafterifxcsname l@#1endcsnamerelax
typeout{** WARNING: IEEEtran.bst: No hyphenation pattern has been}%
typeout{** loaded for the language `#1'. Using the pattern for}%
typeout{** the default language instead.}%
else
language=csname l@#1endcsname
fi
#2}}
providecommand{BIBdecl}{relax}
BIBdecl
end{thebibliography}
And my test.tex:
documentclass[conference]{IEEEtran}
begin{document}
section{Test Citation}
cite{logjam2015}
% ---- Bibliography ----
bibliographystyle{IEEEtran}
bibliography{references}
end{document}
And the references.bib
@inproceedings{logjam2015,
author = {Adrian, David and Bhargavan, Karthikeyan and Durumeric, Zakir and Gaudry, Pierrick and Green, Matthew and Halderman, J. Alex and Heninger, Nadia and Springall, Drew and Thom{'e}, Emmanuel and Valenta, Luke and VanderSloot, Benjamin and Wustrow, Eric and Zanella-B{'e}guelin, Santiago and Zimmermann, Paul},
booktitle = {Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security (CCS '15)},
pages = {5-17},
title = {{I}mperfect {F}orward {S}ecrecy: {H}ow {D}iffie-{H}ellman {F}ails in {P}ractice},
url = {http://doi.acm.org/10.1145/2810103.2813707},
year = {2015},
}
You have generated the .bbl
file at a time when your document contained no cite
or nocite
command. The error derives from a bad redefinition made by IEEEtran.cls
of the endthebibliography
macro.
The standard classes have something like
newenvironment{thebibliography}[1]
{[irrelevant code omitted]}
{def@noitemerr
{@latex@warning{Empty `thebibliography' environment}}%
endlist}
which implies
defendthebibliography{%
def@noitemerr{@latex@warning{Empty `thebibliography' environment}}%
endlist
}
but IEEEtran.cls
has
letendthebibliographyendlist
which is plainly wrong.
If you fix it
documentclass[conference]{IEEEtran}
makeatletter
defendthebibliography{%
def@noitemerr{@latex@warning{Empty `thebibliography' environment}}%
endlist
}
makeatother
begin{document}
section{Test Citation}
cite{logjam2015}
% ---- Bibliography ----
bibliographystyle{IEEEtran}
bibliography{references}
end{document}
then also an empty .bbl
file (that is, with no bibitem
command) will just produce a warning and not an error.
Answered by egreg on May 13, 2021
In my case, this was in the context of a BibTex BBL file, which, upon inspection was empty.
Apparently, Overleaf reported the .bib file's name as Mendeley.bib
and I included bibliography{Mendeley}
, but the file was silently not found.
Solution: I renamed the .bib file to all lower case and updated the bibliography
entry to match and everything worked as expected.
Answered by jhclark on May 13, 2021
I had exactly the same error message, with an empty .bbl
file. If you are using MiKTeX like me, you can try to change bibliographystyle{IEEEtran}
with bibliographystyle{ieeetran}
with all lower case. Then run BibTeX. Finally generate your document running what you are used to. It solved my problem.
I found this solution reading https://ctan.org/pkg/ieeetran, where they provide the latest version of the IEEEtran BibTeX style (which I didn't need to download by the way), and specified that it is contained in TeX Live as IEEEtran and in MiKTeX as ieeetran.
Answered by Audrey on May 13, 2021
For me, there was no content in the latex files so by just including a temporary citation in the paper solved the problem.
Answered by sv_jan5 on May 13, 2021
In case the error keeps presenting even you already added a cite{something}
in your paper, then you have to clear the auxiliary files.
In details, delete any files ended with .log .aux .bbl .blg
. Then compile the document again and voila.
Answered by tngotran on May 13, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP