How to install Canon LBP printers in Ubuntu

Saturday, March 20th 2010, 11:06

UPDATE 1: The currently used CAPT driver since version 2.0 is 2.00 which adds support for Canon LBP6300dn and Canon LBP9100Cdn. Also a new script has been added to the archive to handle the driver uninstall process.

After I bought Riker , when it came to installing Ubuntu I had two options: either install the i386 version but with a PAE aware kernel, either go for the amd64 release. Considering the advantages and disadvantages of both of my options, I decided to go for the 64bit version (although the last time I did this I wasn’t quite happy – back in the 7.10 days). Anyway, Riker is extremely happy about it and I haven’t experienced any problems so far (I’m even running the 64-bit beta flash plugin which works great).

But let’s get back to the main point: Canon printers on 64bit Linux. While Canon does provide a Linux driver (both *.deb and *.rpm files), they are compiled to work only on a 32bit OS (which is like ½ Linux support). Therefore the only solution for the geeky misfortunate fellows like me is to compile their own drivers using Canon’s sources, but not following Canon’s instructions (which seem to be written by an unlucky lad who works at Microsoft but on UNIX services [this is a good joke if you are a geek]). While the process of compiling your own stuff is not very hard to accomplish (when you do have the proper instructions), trying to do this without knowing the exact dependencies is a major pain in the ass.

Fortunately, one guy on Ubuntu forums managed to create a proper set of steps to follow in order to do the job right. If you followed my blog, there’s a slight chance you might have noticed that I like to build BASH scripts to automate tedious Linux things. Since that post helped me to create the two *.deb files needed for the job, I decided to build a script just for the install part, using the packages I compiled and created on my 64bit machine. Also, because I really like geeking around, I made the script to install the correct drivers both on 32bit and 64bit (this is automatically handled by the script).

The current supported printer models for the 1.90 release of the driver are: LBP-1120, LBP-1210, LBP2900, LBP3000, LBP3010, LBP3018, LBP3050, LBP3100, LBP3108, LBP3150, LBP3200, LBP3210, LBP3250, LBP3300, LBP3310, LBP3500, LBP5000, LBP5050, LBP5100, LBP5300, LBP7200C.

You can download the script from here (right click, save as, extract archive). Running the script is pretty easy:

sudo ./canonLBP_install.sh PRINTER_MODEL

where PRINTER_MODEL is one from the above. Any other printer model you would try to use will give you an error message and the script will exit.

Please tell me how it worked. Have fun! :)

Similar Posts:

152 Comments

1 2 3 4 5 6 7 8 9 10 11 12
  • Just used your script – it worked great. Thanks a million – I have pulled my hair out trying to get this working (LBP-1210 on Ubuntu 9.1 32 bit). I am not an ubuntu head.

    Here is one for you, would you now tell me how to get the same printer working as a network printer with Win 7 64bit. Drivers are a real problem with WIN 7 64 bit. Is there anyway that a printer can be setup so that it uses local printers ?

    Thanks again.
    Sean.

    • Sean, I’m glad everything worked okay. Maybe you can write on Ubuntu’s wiki about this (that your model worked okay with the script and with the drivers). The Windows 7 driver for your printer is located here but I don’t know how well it works. Sharing your printer with Windows is easy. Assuming that I got this right, you want to connect your printer to your Ubuntu machine and access it from Windows. For this you have a great guide on Ubuntu’s wiki. The parts that are of interest for you are this one for the printer server and this one for your Windows client. I have used those guides too for sharing a printer between my computers at home and everything is working dandy :D .

  • Thank you very much Radu. I had tried a lot of ways from Google to make my LBP1120 printing anything. None of them worked for me. But your script is just the miracle. And now my Canon LBP1120 PRINTS on Ubuntu 9.10 amd64!
    Thank you very much!

  • hello
    I’ve executed this script on ubuntu lucid beta2
    the system has displayed lbp3010
    but as I give the order to print nothing happens not

  • @lm: Have you followed the instructions written by the script in your terminal precisely? Because I did that on Ubuntu Lucid on my laptop and everything worked well. Of course, I own an LBP2900 but the driver supports your printer model as well.

    To check that there isn’t a driver problem open your terminal and follow this:

    radu@data:~$ sudo /etc/init.d/ccpd status
    Canon Printer Daemon for CUPS: ccpd: 1335 1184

    If you don’t see two PIDs there’s something wrong. In that case delete your previously installed printer, re-run the script and follow those instructions displayed at the end. Don’t forget to reboot your machine before printing the test page.

  • Hello
    thank you for your reply

    in the terminal I typed: sudo ./canonLBP_install.sh LBP3010

    here is what I see in the terminal

    I find no problem to install my printer on karmic manually because I downloaded the drivers from the official site, but I would like use your script because I love the automatic setup.

  • Install libstdc++6. You should have no problems afterwards.

  • thank you again
    the problem of dependent package is resolved
    this problem remains:

    sudo /etc/init.d/ccpd status
    Canon Printer Daemon for CUPS: ccpd: 977
    captstatusui -P LBP3010
    [1] 1844
    sudo /etc/init.d/ccpd status
    Canon Printer Daemon for CUPS: ccpd: 977

    after restart the pc my printer works
    and i see

    Canon Printer Daemon for CUPS: ccpd: 1178 972

    Therefore it works but how to do everything by the script without adding manual…

  • The script does everything. You should just restart your machine after installing your printer and setting it as default. I’ve told you before that I’ve tested the script on my laptop which runs Lucid right after you have posted your first comment.

  • Again thank you
    but before using the script I’ve manually installed libstdc + +6
    I Prefair, do everything by the script
    even for libstdc + +6
    is it possible to integrated libstdc + +6 in the script

  • I guess I can add that too. But the problem is that on some systems (I think prior to 9.10) that package should be libstdc++5. Maybe I’ll add an if there… I wanted to add an uninstaller too.

1 2 3 4 5 6 7 8 9 10 11 12

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">


CODE EXAMPLES: When you want to include source code or terminal output, please use the the following tags like in the next example:

    [language]
    code lines
    [/language]
	

where you substitute language with the programming laguage used throught the code example (for terminal output that would be bash), e.g:

    [bash]
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    [/bash]
	

To see a list of all the supported languages, please check this page.

If you want to include code bits inline, please use the code tags like in the following example:

    The <code>$USER</code> variable holds the current logged in username.
	

Secure your files

Dropbox

Recent Comments

  • Petr said:
    Hi, what have I done wrong if mine doesn’t show two PIDs? I still cannot print and can’t get to know why. more»
  • Sam said:
    Gotta say I love this script. I run vmware server on my Ubuntu desktop and they seem to release a new kernel weekly lately…... more»
  • Andrei Radulescu said:
    Thank you. more»
  • Radu said:
    1. Sure. Connect via SSH and forward the X to the client. 2. There is only one default format but every client can choose its... more»
  • Radu said:
    Skype seems to work without the custom wrapper. more»

Recent Tweets

  • #iuseubuntubecause it allows me to be in full control over my computers: it looks, talks and reacts exactly like I tell it to. [#]
  • @zoso Pe ce protocol încerci să trimiți fișiere? [#]
  • If I'd say "Welcome to Idiot Land!" would you realize that this is the standard greeting for Windows users? [#]
  • The art of web feeds - http://bit.ly/9d2KXr [#]

Geek blogs

Bear