Bibliography for LaTex documents

References versus Bibliography

References contain a complete list of all the sources (books, journal articles, websites, etc.) that you have cited directly in a document. That means that if there are in-text citations for a source there is a reference list entry, and vice versa.

Bibliography, on the other hand, contain all sources that you have used, whether they are directly cited or not. A bibliography includes sources that you have used to generate ideas or ‘read around’ a topic, but have not referred to directly in the body of the document. <---more--->

Installing IEEE BibTex style in Ubuntu

Four steps to install IEEE bibtex style file in Linux in local directory.

  • Download the style files from here
  • Move .bib files to texmf/bibtex/bib/ieee/ . If directory does not exist create it. mkdir -p ~/texmf/bibtex/bib/ieee
    mv ~/Downloads/IEEE*.bib /texmf/bibtex/bib/ieee/
  • Move .bst files to /texmf/bibtex/bst/ieee/ .  If directory does not exist create it. mkdir -p ~/texmf/bibtex/bst/ieee
    mv ~/Downloads/IEEE*.bst /texmf/bibtex/bst/ieee/
  • Run texhash to let latex know that new files are installed texhash

Generate bibliography for LaTex documents

Insert references into your document with the following two commands.

\bibliographystyle{IEEEtran}     % format according to IEEEtran.sty style.
\bibliography{IEEabbrv,myref}    % use data in file “myref.bib”
  • The references are formatted according to the bibliographic style file. Here we use IEEEtran style. Some other styles are “plain”, “unsrt”, “alpha”, “abbrv”, etc
  • IEEEabrv.bib contains the string definitions for the abbreviated names of IEEE journals. (For use with IEEE work.)
  • myref.bib is the file where you save your references info.
  • Make sure that there is no space between the comma and “myref”

IEEEabrv.bib is designed for bibliography styles that require abbreviated titles. IEEEfull.bib can be used for use in bibliographies that require full-length titles.

To include references from multiple bib files (like myref1.bib and myref2.bib),


The sequence of commands in Linux to compile the document including bibliography are

latex mydoc.tex     (“first pass”)
bibtex mydoc        (extracts reference data)
latex mydoc.tex     (matches citations/references)
latex mydoc.tex     (finishes all cross-referencing)

Therefore you are required to compile three times, for the references to appear properly in your document.


Leave a Comment