Option Clash for package Geometry: Reason?

Package layaureo already loads package geometry without options. When LaTeX sees the second load request of a package, then the package is not loaded again (e.g., otherwise, \newcommand in a package would throw errors). But, LaTeX checks the options. The options, given in later load request must be a subset of the options that were used for the loading of the package. In this case, there are two new options causing LaTeX to throw an error.

Solutions:

  • Load the package with all needed options the first time.
  • Use \PassOptionsToPackage at the very begin of the document to add package options. Especially useful, if the first loading of a package is done by the class or another package.
  • Some options can also be given as global option for \documentclass. Such an options is seen by all packages.

In the case of the example, it seems that letterpaper is an error, and you just want to add option showframe. Then remove the \usepackage[letterpaper, showframe]{geometry} -- BTW, package geometry should be loaded (the layout of the document should be set) before hyperref.

Option showframe can be given this way:

\PassOptionsToPackage{showframe}{geometry}
\documentclass[a4paper, ...]{...}
...
\usepackage{layaureo}% loads package geometry
...

Simply substitute the erroneous call of geometry (that is, \usepackage[letterpaper,showframe]{geometry}) with

\geometry{showframe}

The letterpaper option doesn't make sense; if you really need it, it doesn't make sense to load layaureo.