Take the 2-minute tour ×
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.

I'm writing an article that is supposed to be written using the IEEE Manuscript Templates for Conference Proceedings. I downloaded the latex templates from [here][1], and used the bare_conf.tex as a template to my article tex file, myArticle.tex.

I did not remove any code (only comments), and started slowly exchanging the template content with real content. I started to work references into my article, so as the IEEEtran_HOWTO.pdf file advised me, I added the lines \bibliographystyle{IEEEtran} \bibliography{IEEEabrv,mybibfile} to my code, and created a .bib file, currently containing only a single item (see below).

However, when I added the \cite command to my code, referencing the cite key of my single entry, I received the following error and warning:

! LaTeX Error: Something's wrong--perhaps a missing \item.
LaTeX Warning: Citation 'jj2' on page 2 undefined on input line 70.
LaTeX Warning: There were undefined references.

I'm trying to understand what is it that I'm doing wrong, but so far unsuccessfully. Here are all relevant details that I can think of:

  1. My installation: My OS is Windows XP SP3. I'm using Texmaker 3.5.2 as my Tex editor, and MikTex 2.9 as my Tex compiler. The package bibtex is installed, and all my packages are updated as of today.

  2. My working folder contains the following files:

    • IEEEtran.cls (copied from the template's folder)
    • IEEEabrv.bib (downloaded, thought it might be necessary)
    • IEEEtran.bst (downloaded, thought it might be necessary)
    • myArticle.tex
    • myArticle.pdf
    • myArticle.aux
    • myArticle.bbl
    • myArticle.blg
    • myArticle.bcf
    • myArticle.log
    • myArticle.synctex.gz
    • myArticle.run.xml
    • bibi.bib
  3. This is how my .tex file looks like:

        \documentclass[conference]{IEEEtran}
        \hyphenation{op-tical net-works semi-conduc-tor}    
    
        \begin{document}
        \bibliographystyle{IEEEtran}
        \bibliography{IEEEabrv,bibi}
        \title{My Article's Title}
    
        \author{\IEEEauthorblockN{****}
        \and
        \IEEEauthorblockN{****}
        }
        \maketitle
    
    
        \begin{abstract}
        The abstract goes here.
        \end{abstract}
        \IEEEpeerreviewmaketitle
    
        \section{Introduction}
        My intro... blah blah \cite{jj2}.
    
        \section{Conclusion}
        The conclusion goes here.
    
        \section*{Acknowledgment}
    
        \end{document}
    
  4. My bibi.bib file:

        @ARTICLE{jj2,
    author = {Andreas Junghanns and Jonathan Schaeffer},
    title = {Sokoban: Enhancing general single-agent search methods using domain      knowledge},
                journal = {Artificial Intelligence},
                year = {2001},
                volume = {129},
                pages = {219-251}
            }
    

Edit: My code after changing like percuße suggested (I still get the same error):

\documentclass[conference]{IEEEtran}  
\usepackage[noadjust]{cite}  

\hyphenation{op-tical net-works semi-conduc-tor}

\title{title}  

\author{\IEEEauthorblockN{Inbar Naor}\and  
\IEEEauthorblockN{Shay Palachy} }  

\begin{document}  
\maketitle  


\begin{abstract}    
The abstract goes here.  
\end{abstract}  


\section{Introduction}  
blah blah \cite{jj2}.   

\section{Conclusion}   
The conclusion goes here.    

\bibliographystyle{IEEEtran}  
\bibliography{bibi}  

\end{document}


  [1]: http://www.ieee.org/conferences_events/conferences/publishing/templates.html
share|improve this question
add comment

2 Answers

You only need to give your bib file name to the \bibliography command at the location where your bibliography should appear and compile as many times as needed.

\documentclass[conference]{IEEEtran}
\usepackage{filecontents}
\usepackage[noadjust]{cite}

\begin{filecontents*}{bibi.bib}
     @ARTICLE{jj2,
   author = {Andreas Junghanns and Jonathan Schaeffer},
   title = {Sokoban: Enhancing general single-agent search methods using domain knowledge},
   journal = {Artificial Intelligence},
   year = {2001},
   volume = {129},
   pages = {219-251}
   }
\end{filecontents*}

\hyphenation{op-tical net-works semi-conduc-tor}    

\title{My Article's Title}

\author{Shay \\ \IEEEauthorblockN{some author afiliation}
\and
Pal5 \\ \IEEEauthorblockN{another affiliation}
}

\begin{document}
\maketitle


\begin{abstract}
The abstract goes here.
\end{abstract}
\IEEEpeerreviewmaketitle

\section{Introduction}
My intro... blah blah \cite{jj2}.

\section{Conclusion}
The conclusion goes here.

\section*{Acknowledgment}
We acknowledge the acknowledged acknowledgees.

\bibliographystyle{IEEEtran}
\bibliography{bibi}
\end{document}

enter image description here

share|improve this answer
1  
I'm not sure I understand. Should I not use '\bibliographystyle{IEEEtran} \bibliography{IEEEabrv,mybibfile}' as instructed by the IEEEtran_HOWTO? And isn't the whole point of having a .bib file is to store your bibliography information outside of your .tex file? Because the way it's written here the whole contents of bibi.bib is included in the .tex file, isn't it? –  ShayPal5 Feb 22 '13 at 14:43
    
@ShayPal5 Sorry, that part is only to create the bib file on-the-fly to show the example. Filecontents package is used to create a bib file because I didn't have it. You can remove that part from the answer and use your own bib file. –  percusse Feb 23 '13 at 0:20
    
So I should use '\bibliographystyle{IEEEtran} \bibliography{IEEEabrv,mybibfile}'? –  ShayPal5 Feb 24 '13 at 10:38
    
I don't get it - that is the only part of your answer that is different from my code. Obviously, it produced the same errors. –  ShayPal5 Feb 24 '13 at 10:47
    
@ShayPal5 I didn't use IEEEabrv. And the bibliography declaration is at the end. That part in my answer only creates a .bib file that I didn't have. Title and author declarations are also out in the preamble so there are some differences. I can remove the filecontents part if you like to make it minimal. –  percusse Feb 24 '13 at 11:08
show 4 more comments

I found that there are two things that I found are necessary to make the IEEEtran class compile:

  1. There needs to be a at least one correct citation in your document one in your bib (in your case, bibi.bib) file.
  2. In the tool chain, you need to compile with LaTeX (or equivalently PdfLaTeX) twice, then once with BibTex, and then with LaTeX again to incorporate the bibliography.

If either of these two things is not the case, I also get the same LaTeX Error: Something's wrong--perhaps a missing \item error. Bizarrely, with a single citation it works for me, but after commenting it out it crashes again.

The apparent reason for this is that the IEEEtran class doesn't like empty bibliographies and can't deal with that. I haven't been able to find an underlying reason for that, though, nor a way to fix it.

share|improve this answer
add comment

Your Answer

 
discard

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.