4

I have some issues using BibTeX for my bibliography. LaTeX keeps having error about this undefined control sequence:

! Undefined control sequence.<write> ...subitem}{\@mcitecorrectmaxwidthsubitem} \end{mcitethebibliography}

\end{mcitethebibliography}

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

I'm trying to use the achemso package for my bibliography style, but I don't think that's the problem since I have the same using plain or chicago... I'm using the natbib package as indicated for achemso. Note that when I compile without BibTeX, everything's running fine actually.

I'm using JabRef and TeXMaker either on mac (TeXLive) on Windows (MiKTeX).

Thank you very much indeed!

EDIT : Here's my preamble : Indeed, i should have done that since the very beginning... Here's a part of my document :

\documentclass[12pt,a4paper]{book}
\usepackage[utf8]{inputenc}
\usepackage[greek,francais]{babel}
\usepackage[T1]{fontenc}
\usepackage[left=2cm,right=2cm,top=3cm,bottom=3cm]{geometry}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{textcomp}
\usepackage{siunitx}
\usepackage{etex}
\usepackage{m-pictex,m-ch-en}
\usepackage{float}
\usepackage{setspace}
\usepackage{rsc}
\usepackage{multirow}
\usepackage{multicol}
\usepackage{pdfpages}
\usepackage{fancyhdr}
\pagestyle{fancy}
\usepackage{hyperref}
\hypersetup{colorlinks=true, linkcolor=blue,citecolor=blue}
\usepackage[numbers]{natbib}

\begin{document}
\include{partie_1}
\bibliographystyle{achemso}
\bibliography{biblio}
\end{document}

Note that in my "partie_1" document, i don't even use

\cite{...}
Pweting
  • 55

2 Answers2

2

There is some problem with using achemso when you do not have any citations. If I run

\begin{document}

\bibliographystyle{achemso}
\bibliography{library.bib}
\end{document}

I get an error. But running

\begin{document}

\bibliographystyle{plainnat}
\bibliography{library.bib}
\end{document}

or

\begin{document}
\cite{somebody1990}
\bibliographystyle{achemso}
\bibliography{library.bib}
\end{document}

works fine.

So, if you don't have any citations, delete the bibliography or change the bibstyle

Rud Faden
  • 2,124
  • 1
  • 17
  • 11
  • Thanks for your help, when i add a citation, using the achemso package, i have another error :
    ! Extra \endcsname.
    ! Use of \@mcitecurstatus doesn't match its definition.
    
    

    Still, when i use another bibstyle, i have the same error occuring...

    I just noticed that i have an extra .bib.bak file close to my .bib file... is there any problem with it?...

    – Pweting Apr 21 '15 at 08:52
  • 1
    So i started again with a fresh one (i deleted all the .aux and stuff files) and took care of adding a ref when compiling et voila, it actually worked pretty well... Thanks again Rud Faden for your help! =) – Pweting Apr 21 '15 at 09:08
0

I had the same problem you were having, am using achemso, and wondered what could be wrong because I had citations in my document. Turns out that putting a space in the name of the LaTeX .tex source file (which is a bad idea anyway) was causing this problem.

\documentclass{achemso}
\usepackage[numbers]{natbib}
\author{Dylan}\email{jfriend@eng.ucsd.edu}
\affiliation{Making the Band, Detroit, MI USA}
\title{Tapes spit hot fire}
\begin{document}
Look, this is not why I got into the music business to be a sugar cookie
getta.\cite{berndt1988high}
\bibliographystyle{achemso} 
\bibliography{MyPubBib}
\end{document}

with MyPubBib.bib as

@article{berndt1988high,
Author = {Berndt, H},
Journal = {Fresenius' Zeitschrift f{\"u}r analytische Chemie},
Number = {3-4},
Pages = {321--323},
Publisher = {Springer},
Title = {High pressure nebulization: a new way of sample introduction for atomic spectroscopy},
Volume = {331},
Year = {1988}}

saved as test1.tex compiles fine, but compilation as test 1.tex does not, throwing the \mcite... error