diff --git a/examples/Makefile.example b/examples/Makefile.example
new file mode 100644
index 0000000..f2b0dc0
--- /dev/null
+++ b/examples/Makefile.example
@@ -0,0 +1,82 @@
+# Ceres Solver - A fast non-linear least squares minimizer
+# Copyright 2015 Google Inc. All rights reserved.
+# http://ceres-solver.org/
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# * Redistributions of source code must retain the above copyright notice,
+#   this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above copyright notice,
+#   this list of conditions and the following disclaimer in the documentation
+#   and/or other materials provided with the distribution.
+# * Neither the name of Google Inc. nor the names of its contributors may be
+#   used to endorse or promote products derived from this software without
+#   specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+# Author: keir@google.com (Keir Mierle)
+#
+# This is an example Makefile for using Ceres. In practice, the Ceres authors
+# suggest using CMake instead, but if Make is needed for some reason, this
+# example serves to make it easy to do so.
+
+# This should point to place where you unpacked or cloned Ceres.
+CERES_SRC_DIR := /home/keir/wrk/ceres-extra
+
+# This should point to the place where you built Ceres. If you got Ceres by
+# installing it, then this will likely be /usr/local/lib.
+CERES_BIN_DIR := /home/keir/wrk/ceres-extra-bin
+
+# The place you unpacked or cloned Eigen. If Eigen was installed from packages,
+# this will likely be /usr/local/include.
+EIGEN_SRC_DIR := /home/keir/src/eigen-3.0.5
+
+INCLUDES := -I$(CERES_SRC_DIR)/include \
+            -I$(EIGEN_SRC_DIR)
+
+CERES_LIBRARY := -lceres
+CERES_LIBRARY_PATH := -L$(CERES_BIN_DIR)/lib
+CERES_LIBRARY_DEPENDENCIES = -lgflags -lglog
+
+# If Ceres was built with Suitesparse:
+CERES_LIBRARY_DEPENDENCIES += -llapack -lcamd -lamd -lccolamd -lcolamd -lcholmod
+
+# If Ceres was built with CXSparse:
+CERES_LIBRARY_DEPENDENCIES += -lcxsparse
+
+# If Ceres was built with OpenMP:
+CERES_LIBRARY_DEPENDENCIES += -fopenmp -lpthread -lgomp -lm
+
+# The set of object files for your application.
+APPLICATION_OBJS := simple_bundle_adjuster.o
+
+all: simple_bundle_adjuster
+
+simple_bundle_adjuster: $(APPLICATION_OBJS)
+	g++ \
+		$(APPLICATION_OBJS) \
+		$(CERES_LIBRARY_PATH) \
+		$(CERES_LIBRARY) \
+		$(CERES_LIBRARY_DEPENDENCIES) \
+		-o simple_bundle_adjuster
+
+# Disabling debug asserts via -DNDEBUG helps make Eigen faster, at the cost of
+# not getting handy assert failures when there are issues in your code.
+CFLAGS := -O2 -DNDEBUG
+
+# If you have files ending in .cpp instead of .cc, fix the next line
+# appropriately.
+%.o: %.cc $(DEPS)
+	g++ -c -o $@ $< $(CFLAGS) $(INCLUDES)
