Reading Time: 3 minutes
I’ve recently was asked by my cousin to install and configure her Canon Pixma iP3300 on Ubuntu Linux version 9.10 (Karmic) since the printer was not initialized properly by default.
After a bit of investigation and experimentation, I finally found the way to install and configure the Canon Pixma iP3300
Here is a step by step howto for all those who are suffering with the same annoying issue:
1. Install some preliminary deb packages
ubuntu:~# apt-get update
ubuntu:~# apt-get install alien libxml++1.0-dev libpng12-0 libpng12-dev libgtk1.2 libgtk1.2-common
2. Create a new canon directory
ubuntu:~# mkdir canon
3. Download the libraries and printer drivers in rpm (required by linux’s cups printing system
I’ve made a mirror of the packages, as it was a bit hard to find the packages, i hope mirroring them will guarantee the packages won’t suddenly disappear from the net.
I’ve mirrored a whole bunch of linux drivers which are for various Canon printers
However the files which are necessary for making the Pixma ip3300 to work out on Ubuntu or Debian are:
In some cases on an AMD64 (64 bit Linux architecture), you might also need the file:
To straight download the ip3300 necessary files in the just created directory canon in step 2 issue the cmd:
ubuntu:~# cd canon
ubuntu:/canon# wget https://www.pc-freak.net/files/canon-linux-drivers/cnijfilter-common-2.70-1.i386.rpm
ubuntu:/canon# wget https://www.pc-freak.net/files/canon-linux-drivers/cnijfilter-common-2.70-1.src.rpm
ubuntu:/canon# wget https://www.pc-freak.net/files/canon-linux-drivers/cnijfilter-ip3300-2.70-1.i386.rpm
As you have seen in step 1, we have installed the alien tool which will be used to convert the rpm packages to .tgz (tar.gz) files.
The reason why I’m converting to .tgz instead of directly converting to .deb package is that two of the files are built for the i386 architecture, the ubuntu where I wanted to install them has installed an amd64 version of Ubuntu (a 64bit release of Ubuntu).
As the Ubuntu is amd64 version whether I try to convert the .rpm files to .deb packages like so:
ubuntu:/canon# alien --to-deb cnijfilter-common-2.70-1.i386.rpm
I got the error:
cnijfilter-common-2.70-1.i386.rpm is for architecture i386 ; the package cannot be built on this system
As I said earlier to get around this issue, 4. Use alien to convert my .rpm to .tgz :
ubuntu:~# alien --to-tgz cnijfilter-common-2.70-1.i386.rpm
ubuntu:~# alien --to-tgz cnijfilter-ip3300-2.70-1.i386.rpm
5. Untar the .tgz cnijfilter archives
ubuntu:/canon# tar -zxvf cnijfilter-ip3300-2.70.tgz
ubuntu:/canon# tar -zxvvf cnijfilter-common-2.70.tgz
The above files unarchive will extract you a directory called usr/ , now you will need to manually copy the files from this directory to the correct locations, here are the commands to issue to do that:
6. Copy extracted drivers to correct locations
ubuntu:/canon# cd usr
ubuntu:/canon/usr# cp -rpf lib/* /usr/lib
ubuntu:/canon/usr# cp -rpf local/* /usr/local/
ubuntu:/canon/usr# cp -rpf local/bin/* /usr/bin/
ubuntu:/canon/usr# cp -rpf local/share/* /usr/share/
7. Create symbolink links to libtiff and libpng as a fix up
ubuntu:/canon/usr# ln -s /usr/lib/libtiff.so.4 /usr/lib/libtiff.so.38. Make the Ubuntu be aware of the newly installed libraries
ubuntu:/canon/usr# ln -s /usr/lib/libpng.so /usr/lib/libpng.so.3
ubuntu:/canon/usr# ln -s /usr/lib/libtiff.so.2 /usr/lib/libtiff.so.1
9. Restart the cups printing server
ubuntu:/canon/usr# /etc/init.d/cups restart
* Restarting Common Unix Printing System: cupsd
So far so good by now, your Ubuntu or Debian system should be able to initilize your Canon Pixma iP3300 , next step is to configure your printer to be able to print correctly in color mode.
What I did straight after my correct installation was to test the printer. The tests went fine with printing black and white or (Greyscale), however whether I tried to test printing in color mode, my printed images and colors were completely distorted!
It took me a bit of try/fails until I succeeded with the printer to print in colors.
There are few settings which has to be tuned right after install to make the Pixma iP3300 print in color on Linux
Here are the few things which I had to tune from System -> Administration > Printing
10. Configure in Administration -> Printing the following options
Change the default set resolution for the printer from Automatic which is the printer default to:
By the default the Pixma ip3300 will try to print out with the highest resolution possible 600x600DPI, however the Linux drivers doesn’t seem to support this resolution, if the 600x600DPI resolution is used the result is the distorted color picture print outs.
Further on configure the Color Model option:
Color Model: RGB Color or
Color Model: CMYK
Now your Canon Pixma iP3300 printer should be printing fine both in black and white and in color on your Ubuntu/Debian Linux.
I believe this little install tutorial should be working just fine for all kind of Debian Linux direvatives 😉
Enjoy printing and don’t forget Print as less as possible, Save a Tree! 😉