i am a new Linux user and i am having trouble installing my multifunctional Canon MP190 under openSUSE 11.2 x64. I have downloaded the 32-bit drivers (there are no 64-bit drivers available) from Canon 's site (PIXMA MP190) in .rpm format but that 's about it :shame:
This is what i have done so far:
I untarred the file i downloaded (“MP190_RPM_drivers.tar”)
Inside there are 2 more tar files
MP190_RPM_printer.tar
MP190_RPM_scangear.tar
Trying at first to install the printer functionality, i untarred the “MP190_RPM_printer.tar” file and i got 3 more files
cnijfilter-common-3.00-1.i386.rpm
cnijfilter-mp190series-3.00-1.i386.rpm
cnijfilter-common-3.00-1.tar.gz
I tried clicking the file “cnijfilter-common-3.00-1.i386.rpm” but it gives me an error saying:
Subprocess failed. Error: RPM failed: error: Failed dependecies:
libpopt.so.0 is needed by cnijfilter-common-3.00-1.i386
That 's as fas as i got (not very far i know).
Could someone more experienced than me, provide me with some guidelines, preferably keeping it as simple as possible? I don’t mind using the terminal or doing some reading but i could really use some help to get my printer/scanner working.
Thats strange. Libpopt is in the OSS repository. Is not libpopt on your PC ? What is the output of
rpm -q libpopt0
if it is installed, and you type
rpm -ql libpopt0
you will see what packages are installed.
I’m wondering it your PC is 64-bit and you are trying to install a 32-bit package? I note on 64-bit PCs libpopt0 is kept under:
/lib64/libpopt.so.0
while in a 32-bit PC it is kept under:
/lib/libpopt.so.0
That looks like a 32-bit rpm you quoted and maybe it is looking in the wrong place for libpopt.so.0 ?
I confess I deliberately avoid Canon printers as they can be a real pain in Linux to setup. So I can NOT help you with any Canon specifics nor can I provide simple guidelines. Sorry.
I suppose a real hack would be to put a symbolic link in /lib/libpopt.so.0 pointing to /lib64/libpopt.so.0 , but IMHO its better try to build a 64-bit version than mess around with hacks like that. You did not read the previous line from me. :\
As far as i can tell libpopt0 is installed in my PC. Or am i mistaken?
And yes my PC is 64bit and i try to install the only available drivers for the Canon MP190 which are 32bit unfortunately.
Is there any way to “force” the 64bit architecture of the operating system onto the 32bit drivers? I don’t know if i am making much sense with that though…
Also the rpm .src files that you refer to, are the source code for the drivers? If so, i doubt that they are available since these are proprietary drivers from Canon, but i 'll try looking for them…
If all else fails, is there any sort of generic driver for printing that can recognize my printer? I would hate to have to dual boot with Windows just to be able to print a document or scan an image.
Yes, but it is in a 64-bit location. That 32-bit app will look in a 32-bit location, and that library is NOT in the 32-bit location … ie it can not be found.
Please reread the statement that I stated I did not say about symbolic link in the 32-bit pointing to the 64-bit .
I looked for an rpm src but could not find it. You may need to compile from tarball which will not be fun.
there like is a commercial driver you can buy if desperate. But this is likely hackable without resorting to this.
But you can now see why I use HP. In the time it took me to type this post, I would have an HP working.
suggests that to carry out the symbolic link that you open a terminal and copy and paste the command below
ln -s /usr/lib64/cups /usr/lib/cups
**After you have done the symbolic link
**
I would suggest that you install each printer package; (cnijfilter-common-3.00-1.i386.rpm first and cnijfilter-mp190series-3.00-1.i386.rpm next) by right-clicking on each rpm package and selecting “install with package manager” as that way I understand YaST has a record of it …
… and … I think … you need to CLOSE YaST after installing the common; before opening it again when you select to install the mp190 series rpm …
Sylinde, note in addition to the EXCELLENT information given above by the contributors to this thread, you will need to get by the dependency error you reported in your first post. You can do that by forcing the rpm install. That may be the way.
I confess I hate the idea of forcing an install, and alternatively I suppose in addition to the “cups” symbolic link you could also try putting in a symbolic link with:
and then proceeding to install per the excellent guidance given above. But as noted, I know nothing about this so I can not really say if that is a good or bad idea. It may be a bad idea. I simply do not know.
My sincere thanks to everyone who have tried to solve my problem so far! Now i have a very clear understanding of what i have to do in order to make my printer work.
However i still can’t get past the initial dependecy error. I have tried creating both symbolic links as suggested in the posts by pdc_2 and oldcpu, but i still get the same error :\
I should note that before i created the symbolic links, i logged in as root. Also when i pasted the commands into the terminal and run them, there was no sort of comfirmation that the creation of the symbolic link was successful.
How do i know that the symbolic link was created flawlessly and nothing went wrong?
I just realised that maybe the error persists because the .rpm tries to find the libpopt.so.0 NOT in the usr/lib folder but in the /lib folder. However we created a symbolic link from usr/lib… to usr/lib64…
Of course all that could be just nonsense since i am a very inexperienced Linux user, but i thought i should mention it. So all i am saying is that maybe i shoud try the following
AAAAAARRRRRGGGHH, please don’t link to 64bit libs. Install ‘libpopt-32bit’ (it’s name) it’s available in the software installer. Same goes for other 32bit libraries you may ever need. Look for the ‘packagename-32bit’ version.
AFAIK there are 64bit drivers around, but Canon moved them from the place I usually look. Another solution is not to buy Canon printers. They explicitely stated they officially do not support linux.
Many thanks Knurpht for your suggestion! I installed the package “libpopt0-32bit” and the dependecy error dissapeared.
After that error got out of the way, i managed to install the printer via YaST->Hardware->Printer and its status reports its ready and listed as the default printer.
However it doesn’t print
When i try to print a test page, i wait about 2 minutes and in the end i get an error saying:
Unable to start filter “pstocanonij” - No such file or directory.
I searched for such a folder in the zipped files that i downloaded and i found it inside the file “cnijfilter-common-3.00-1.tar.gz”. However i have no idea where it should go. Purely by intuition i think that i should copy it somewhere but i don’t know where…
I think that i am getting really close to making this @#%$ thing actually print, but i need a little more help yet.
Again thanks to everyone for your valuable suggestions so far!
I tried following the same procedure for the scanner too (ie run the file “scangearmp-common-1.20-1.i386.rpm” first and then “scangearmp-mp190series-1.20-1.i386.rpm”), but i run again into similar dependecy errors. The files that are needed now are:
If i knew that i would have to do all that stuff just to get to the basic functionality of the device, i would have installed openSUSE 32-bit instead, from the start…
Getting another printer would also be a choice, but since i have the Canon for only a few months now and it worked very well in Windows (ie it covered my needs as a home user), that 's not an option.
I didn’t imagine though it would be so hard to get it running under Linux.
On to the scanner functionality, it seems that those files do exist in usr/lib64. Should i do symbolic links for them also? Or is there a 32-bit package that i should install in this case as well, as suggested earlier by Knurpht?