Installing a Canon LBP7010C printer in Ubuntu 16.04

I struggled with this for a while, and I think the main trouble I had was with selecting the correct PPD file for CUPS. These commands mainly came from this Ubuntu-fr guide.

  • Get the Linux drivers from Canon. (These are for LBP7010C.)
  • Extract the archive:
$ tar xvzf Linux_CAPT_PrinterDriver_V270_uk_EN.tar.gz
  • The guide mentioned above suggests that Glade is a dependency:
$ sudo apt-get install libglade2-0
  • Before installing the drivers, install these 32-bit packages:
$ sudo apt-get install libatk1.0-0:i386 libcairo2:i386 libgtk2.0-0:i386 libpango1.0-0:i386 libstdc++6:i386 libxml2:i386 libpopt0:i386
  • Navigate to the folder containing the Debian package (64-bit in my case) and install the common and capt drivers:
$ sudo dpkg -i cndrvcups-common_3.20-1_amd64.deb cndrvcups-capt_2.70-1_amd64.deb
  • Now install the driver in CUPS:
$ sudo /usr/sbin/lpadmin -p LBP7010C-7018C -m CNCUPSLBP7010CCAPTJ.ppd -v ccp://localhost:59787 -E

Note that I’m using the CAPTJ driver rather than the CAPTK (CNCUPSLBP7018CCAPTK.ppd) driver recommended in the Canon README file - it refused to work when I tried the CAPTK driver. * Now add the printer to ccpd (the printer daemon for CUPS):

$ sudo /usr/sbin/ccpdadmin -p LBP7010C-7018C -o /dev/usb/lp2

You’ll need to check the USB connection to the printer before running this:

$ lsusb

to make sure it is connected, and:

$ ls -l /dev/usb/lp* /dev/bus/usb/*/*

you can also check if CUPS detects the printer:

lpinfo -v
  • The guide also suggests the following addition to /etc/init.d/ccpd directly after the first two lines:
### BEGIN INIT INFO
# Provides: ccpd
# Required-Start: $ local_fs remote_fs $ $ $ $ network syslog named
# Should-Start: $ ALL
# Required-Stop: $ syslog $ remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: Start Canon Printer Daemon for CUPS
### END INIT INFO
  • It is also worth checking that the device path is correctly defined in /etc/ccpd.conf:
<Printer LBP7010C-7018C>
DevicePath /dev/usb/lp2
</Printer>
  • And that ccpdadmin has correctly verified the record:
$ sudo ccpdadmin
  • Finish by starting ccpd:
$ sudo ccpd service start
  • You can check the status of the printer using:
$ captstatusui -P LBP7010C-7018C

It is also worth noting that the USB connection to my printer only works when I restart the printer (i.e. if the printer is on and the computer is restarted the USB connection to the printer is not picked up).

Updated on Dan Matthews

Dan Matthews

Dan Matthews
NIC@King's manager and hobbyist programmer

New Postgres database and user for use in Django

how to create a new postgres database and user for use in django Continue reading

Postgres user

Published on May 16, 2016

Allow postgres user to create database

Published on May 16, 2016