Please Help me to get rid of the following error:

    ("C:\Program Files\MiKTeX 2.9\tex\latex\mytheorem\demonstration.sty"
Package: demonstration 

! LaTeX Error: Command \openbox already defined.
               Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.

l.13   \vrule\hfil}}

Giving by this code source:

    \geometry{left=-1cm, right=1cm, top=1.5cm, bottom=1.5cm}  
    \def\mathbi#1{\textbf{\em #1}}
      \hbox{\vbox to \shadowbaseline{%
         \ifnum \c@secnumdepth >\m@ne
    \fancyhead[RE]{ \scshape \leftmark}
    \fancyhead[LO]{\scshape  \nouppercase \rightmark }
    \fancyfoot[RE]{ \scshape  \textsc{ My institut}} 
    \fancyfoot[LO]{ \scshape \textsc{Title} }
  • Without a MWE is vey difficult to answer and it's not easy to find demonstration.sty. Surprise ! there are 121 packages inside the mytheorem's folder. The problem is simple : demonstration.sty uses \newcommand{\openbox} and openbox is already defined but where ? – Alain Matthes Jan 19 '12 at 7:21
  • 1
    As Altermundus pointed out, there is actually nothing wrong with the \vrule\hfil, it's just the code which follows on line 13 in that file. The real error message is ! LaTeX Error: Command \openbox already defined. of course. You should change the title of your question accordantly. – Martin Scharrer Jan 19 '12 at 8:49
  • 4
    Your example shows a lot of typical problems: Your preamble includes a bunch of packages you probably don't need (you forgot the kitchen sink), you have code you most likely don't need (redefining \chaptermark), and code that should be left to packages (you include geometry and set the page dimens directly). Start again with a minimal document. – Martin Schröder Jan 19 '12 at 9:54
  • I do not seem to have the slashbox package, and is \limpsum intended to be \lipsum? Once I remove the slashbox package, add the calc package, and correct \limpsum, your example compiles for me. Please provide a [MWE]((meta.tex.stackexchange.com/questions/228/…)) that actually illustrates the problem. – Peter Grill Jan 19 '12 at 19:51

The code tries to define the command \openbox, which is already defined. This leads to that error message. Check your file C:\Program Files\MiKTeX 2.9\tex\latex\mytheorem\demonstration.sty for this.

Very probably you already loaded a package, which defines \openbox. For example, amsthm and ntheorem both define it, and both in the same way:

  \hbox to.77778em{%
  \vbox to.675em{\hrule width.6em\vfil\hrule}%

You can see the commands


from your error message.

Remove the package(s) from your preamble, which you don't need. And if you need it and you would like to keep it, don't define the same command again or use \renewcommand instead of \newcommand if it's your intention to change a macro definition.




Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.