I have a dell printer and have had to set it up on a new machine. It’s somewhat tricky to get this playing nicely on ubuntu as the specific model (Dell 1350cnw) is not directly supported.
I have found a bunch of posts related to this, the most comprehensive being this one. Since I may have to set up another machine in future I’m leaving this post as a how to guide.
Driver
The Xerox Phaser 6000B driver is required. I don’t know why this specific one works, it does though.
It’s available here and I have copied it here. Installing this is easy:
sudo dpkg -i xerox-phaser-6000-6010_1.0-1_i386.deb
The problem is there are almost certainly unmet dependencies, so it won’t install correctly. To fix them you can just run:
sudo apt --fix-broken install
Setting up the Printer
In Settings->Printers you can Add Printer...
which looks promising, but doesn’t find the correct driver. Without the driver the printer is text only.
Instead use the Additional Printer Settings...
button. That will find the printer on the network and allow you to do further configuration. After selecting AppSocket/JetDirect network printer via DNS-SD
you can then choose the driver. It should be available in the Xerox section:
Fixing the Failure To Print
After all this the wizard asks if you’d like to print a test page. It probably fails. Why?
The error log is at /var/log/cups/error_log
and this time I had the error:
error while loading shared libraries: libcupsimage.so.2: cannot open shared object file: No such file or directory
The problem here is that my system is 64bit and the driver is 32bit. When the packages were fixed the 64bit version of libcups was installed. To install the 32bit version use the command:
sudo apt-get install libcupsimage2:i386
Now you should be able to print.
On another machine I saw that there was a problem locating the libstdc++.so.6
package. This was fixed by installing the 32 bit version of the stdc++6 package:
sudo apt-get install lib32stdc++6
It’s likely that the 64 bit version of this package (libstdc++6
) is already installed, this may be another 32 bit vs 64 bit dependency resolution problem.