# Package Fancyhdr Warning: \fancyfoot’s `E’ option without twoside option is useless

Too long, not going to read: I got the LaTeX warning
Package Fancyhdr Warning: \fancyfoot’s `E’ option without twoside option is useless
in a LaTeX project and I solved it.

I have two similar LaTeX projects, both using more or less the same code as each other; both use the `book` document class and the fancyhdr package. Both projects built perfectly well and produced the output I expected – until I put page numbers in the footer.

``````\fancypagestyle{normalpages}{%
\fancyhf{}% remove everything
}
}
}
% Footers
\fancyfoot[C]{%
\centering
<central footer>%
}
\fancyfoot[LE,RO]{
\thepage
}``````

One of the projects, A, built as expected and put the page numbers in the footer on the left of odd-numbered (verso) pages and the right of even-numbered (recto) pages. Project B, however, put the page numbers on the right of both verso and recto pages and produced the following warning:

Package Fancyhdr Warning: \fancyfoot’s `E’ option without twoside option is useless on input line x.

Well, isn’t that terrific? I looked on the internet for help, but the only answers I could find implied that my copy of the fancyhdr package provided by TeX Live was out of date or that it doesn’t matter if all works well. The former could not be true if it worked for one project. It did not work well, so I ignored the latter solution. There was one other possibility: ‘unless you activate the `twoside` class option, `E` (for Even) won’t have any effect’.

Ah. I looked at the document class’s options: project A specified `twoside` whereas project B did not. I amended project B and rebuilt the document to find no difference in the output or the warnings. Hmm.

I searched the log file for `twoside`, and found a line in project B’s log file:
* \@twosidefalse.
This code was in a block of code to do with the geometry package. In project A, the same line had
* \@twosidetrue.
The whole block for project A, which is the one that worked, was:

``````*geometry* driver: auto-detecting
*geometry* detected driver: pdftex
*geometry* verbose mode - [ preamble ] result:
* driver: pdftex
* paper: a4paper
* layout: <same size as paper>
* layoutoffset:(h,v)=(0.0pt,0.0pt)
* modes: twoside
* h-part:(L,W,R)=(71.13188pt, 455.24411pt, 71.13188pt)
* v-part:(T,H,B)=(86.55685pt, 687.35811pt, 71.13188pt)
* \paperwidth=597.50787pt
* \paperheight=845.04684pt
* \textwidth=455.24411pt
* \textheight=687.35811pt
* \oddsidemargin=-1.1381pt
* \evensidemargin=-1.1381pt
* \topmargin=-70.71313pt
* \topskip=12.0pt
* \footskip=35.0pt
* \marginparwidth=0.0pt
* \marginparsep=0.0pt
* \columnsep=10.0pt
* \skip\footins=10.8pt plus 4.0pt minus 2.0pt
* \hoffset=0.0pt
* \voffset=0.0pt
* \mag=1000
* \@twocolumnfalse
* \@twosidetrue
* \@mparswitchtrue
* \@reversemarginfalse
* (1in=72.27pt=25.4mm, 1cm=28.453pt)``````

Notice the line near the top that reads * modes: twoside in amongst the settings of the geometry package. I looked at the options of that package in both projects: project A specified `twoside=true`, whereas project B specified `twoside=false`. Changing the latter to false — and, indeed, removing the whole option from both — resulted in both projects producing page numbers on the correct sides of verso and recto pages. Hurray!

``````\geometry{%
paper=a4paper,
% twoside=true, % don't put twoside=false here
left=2.5cm,
right=2.5cm,
top=86.55685pt,
bottom=2.5cm,
footskip=35pt,%14.49998pt,
heightrounded=false,
The solution is to ensure that all page specifications are consistent: if `twoside` is specified in one place, it must be specified everywhere. I have found, for the `book` document class, that it is simplest to omit all mentions of `twoside`, which produces a document that is indeed double-sided.