To build the Canon imageCLASS MF3010 Linux driver from source, download the “UFR II/UFR II LT Printer Driver for Linux V3.20” archive from Canon’s support website.

On Fedora 25, you need two adjustments to build the RPM cleanly:

1. Spec File Patch (cndrvcups-common.spec)

Exclude internal dependency requirements and apply the gmodule patch:

--- cndrvcups-common.spec.orig    2016-11-16 14:37:13.341877857 +0530
+++ cndrvcups-common.spec         2016-11-16 14:34:40.674461102 +0530
@@ -1,5 +1,6 @@
 %define VERSION 3.60
 %define  RELEASE 1
+%global __requires_exclude ^libcaiousb.so$
 
 %ifarch         x86_64
 %define         libs32          /usr/lib
@@ -19,6 +20,7 @@ Vendor: CANON INC.
 Group: Applications/Publishing
 
 Source: cndrvcups-common-%{version}-%{release}.tar.gz
+Patch0: cndrvcups-common-gmodule.patch
 
 BuildRoot: %{_tmppath}/%{name}-root
 
@@ -27,6 +29,8 @@ BuildRoot: %{_tmppath}/%{name}-root
 %prep
 %setup -q
 
+%patch0 -p1
+
 cd buftool
 ./autogen.sh --prefix=%{_prefix} --enable-progpath=%{_bindir} --libdir=%{_libdir} --disable-shared --enable-static

2. Add gmodule Dependency Patch

In modern Fedora releases, gmodule must be explicitly included in PKG_CHECK_MODULES:

--- cndrvcups-common-3.60/cngplp/configure.in    2014-12-05 15:26:04.000000000 +0530
+++ cndrvcups-common-3.60/cngplp/configure.in    2016-11-16 14:17:32.517073588 +0530
@@ -11,7 +11,7 @@ AM_PROG_CC_STDC
 AC_HEADER_STDC
 AM_PROG_LIBTOOL
 
-pkg_modules="gtk+-2.0 >= 2.0.0"
+pkg_modules="gtk+-2.0 >= 2.0.0 gmodule"
 PKG_CHECK_MODULES(PACKAGE, [$pkg_modules])
 AC_SUBST(PACKAGE_CFLAGS)
 AC_SUBST(PACKAGE_LIBS)

Place the patch in SOURCES/, run rpmbuild -ba cndrvcups-common.spec, and install the resulting RPMs.