Tags
Amazon MP3, FAQs Help and Tutorials, Open Source Software, Operating System, Personal Computer, Ubuntu
How to Install Amazon MP3 Downloader on Ubuntu 9.04 x86-64
10/07/2009
The Amazon MP3 Downloader is available for Ubuntu but only as a 32 bit binary. You can install this on your 64 bit PC as follows:
$ sudo apt-get install get-libs sudo dpkg -i --force-architecture amazonmp3.deb $ sudo getlibs /usr/bin/amazonmp3
07/09/2010
Additional steps for Ubuntu 10.04: Package amazonmp3 results in the following error:
Error: Dependency is not satisfiable: libboost-filesystem1.34.1
Install libboost-filesystem1.34.1 alongside the current version using instructions by tvst on the Ubuntu forums.
mkdir old_boost cd old_boost wget https://launchpadlibrarian.net/26959932/libboost-signals1.34.1_1.34.1-16ubuntu1_i386.deb https://launchpadlibrarian.net/26959936/libboost-thread1.34.1_1.34.1-16ubuntu1_i386.deb https://launchpadlibrarian.net/26959922/libboost-iostreams1.34.1_1.34.1-16ubuntu1_i386.deb https://launchpadlibrarian.net/26959918/libboost-filesystem1.34.1_1.34.1-16ubuntu1_i386.deb https://launchpadlibrarian.net/26959916/libboost-date-time1.34.1_1.34.1-16ubuntu1_i386.deb https://launchpadlibrarian.net/26959928/libboost-regex1.34.1_1.34.1-16ubuntu1_i386.deb https://launchpadlibrarian.net/34165098/libicu40_4.0.1-2ubuntu2_i386.deb sudo dpkg -i *.deb cd .. rm -r old_boost
Note: This fix also applies to Ubuntu 10.04 32-bit version. Also see Installing Amazon MP3 Downloader on Ubuntu 10.10.
Error: Dependency is not satisfiable: libboost-filesystem1.34.1
Advertisement
From → Open Source Software
Running Ubuntu 9.04 on an intel x86-64.
Did the two steps mentioned above. No dice. I get these messages when I run amazonmp3 from a terminal window.
———–
Gtk-Message: Failed to load module “canberra-gtk-module”: /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
————
Made the mistake of buying a couple of songs. All I get from amazonmp3 when it runs is “Can’t connect. Check your internet connection and retry download.”
Wes
You are getting this error because you only have the 64-bit library available. There’s a couple of things you can try.
$ sudo apt-get install ia32-libs$ sudo getlibs -l libgvfsdbus.so libgioremote-volume-monitor.so libgiogconf.so
Please let me know how you get on and I’ll update the post. Thanks.
tried the first 2 commands along with the ones regarding the 32bit libs, the following are the outcome:
Original commands:
par@par-desktop:~$ sudo dpkg -i –force-architecture amazonmp3.deb
dpkg: error processing amazonmp3.deb (–install):
cannot access archive: No such file or directory
Errors were encountered while processing:
amazonmp3.deb
par@par-desktop:~$ sudo getlibs /usr/bin/amazonmp3
sudo: getlibs: command not found
par@par-desktop:~$
Getlibs commands:
par@par-desktop:~$ sudo apt-get install ia32-libs
Reading package lists… Done
Building dependency tree
Reading state information… Done
ia32-libs is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
par@par-desktop:~$ sudo getlibs -l libgvfsdbus.so libgioremote-volume-monitor.so libgiogconf.so
sudo: getlibs: command not found
par@par-desktop:~$
See http://martinwebster.eu/2009/06/16/bbc-iplayer-desktop-on-ubuntu/ for instructions on installing getlibs. I’ll update the post later.
On your other problem note that dpkg requires two “-”.
par@par-desktop:~$ sudo dpkg -i --force-architecture amazonmp3.debAlso, ensure that you downloaded the package to your desktop or specify the correct location of amazonmp3.deb when executing the command.
Just to let you know, I got it up and running using the desktop command. I dont know how to use all those commands being such an amateur.
I had already installed i132-libs. I did this:
$ sudo getlibs -l libgvfsdbus.so libgioremote-volume-monitor.so
Those libraries are now installed.
Alas, I still get the same error messages when I run amazonmp3 from a terminal. It’s my belief that all the needed 32-bit libraries are in /usr/lib32, but amazonmp3 isn’t “seeing” them. I tried exporting the LD_LIBRARY_PATH=/usr/lib32 before running amazonmp3, but got the same result.
I wonder if unbuntu 9.04 has some other way of letting programs “find” the libraries in /usr/lib32?
Any help would be most appreciated.
Let me add a bit of evidence for my claim that amazonmp3 isn’t looking for the 32-bit libraries in the right place. Consider this error message.
——-
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
——–
This very library IS in /usr/lib32/…. But amazonmp3 is looking in /usr/lib/….
Did you include the following?
$ sudo getlibs -l libgiogconf.soAnd the original command:
$ sudo getlibs /usr/bin/amazonmp3Yes, I’ve done both of those things. I have this installed:
/usr/lib32/gio/modules/libgiogconf.so
I still think the problem isn’t absent libraries, but the fact that amazonmp3 is looking for them in the wrong place.
I don’t myself know enough about how ubuntu 9.04 works. I used to be that the value of $LD_LIBRARY_PATH told programs where to look for libraries. But this doesn’t seems normally to be set to anything in the environment. As I said I tried manually setting it to “/usr/lib32″, right before running amazonmp3. But that made no difference.
You shouldn’t have to change environment variables as getlibs sorts out the dependencies for 32-bit and 64-bit applications. The last error message you posted means that you only have the 64-bit library available.
Try purging amazonmp3.deb and starting over. It works on my AMD system albeit I’m running a few 32-bit applications so may already have already resolved a dependency.
Also, check out http://ubuntuforums.org/showthread.php?t=474790 for other getlib options.
Just done this on a fresh install so see my notes below
There is a script called getlibs that’s designed to help you get around this problem: http://ubuntuforums.org/showthread.php?t=474790
Download and install getlibs
The 32-bit instructions above have to be modified like this:
Code:
sudo apt-get install libboost-signals1.34.1 libboost-iostreams1.34.1
sudo dpkg -i –force-all amazonmp3.deb
which amazonmp3
sudo getlibs /usr/bin/amazonmp3
apt-get install lib32nss-mdns
amazonmp3
Thanks for your post. Whilst I’d previously installed lib32nss-mdns I didn’t need libboost-signals and libboostiostreams to run amazonmp3 successfully (not sure why you would the need Boost C++ libraries.)
Well, I did absolutely everything that’s been suggested. amazonmp3 is still looking for those libraries in /usr/lib/… I still get the following error messages.
—-
Gtk-Message: Failed to load module “canberra-gtk-module”: /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
————-
Maybe the fact that I’m running a 64-bit Intel machine is the relevant difference?
Guess what? When I run amazonmp3 from the command line I get:
Gtk-Message: Failed to load module "canberra-gtk-module": /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so: wrong ELF class: ELFCLASS64
/usr/lib/gio/modules/libgioremote-volume-monitor.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgioremote-volume-monitor.so
/usr/lib/gio/modules/libgvfsdbus.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgvfsdbus.so
/usr/lib/gio/modules/libgiogconf.so: wrong ELF class: ELFCLASS64
Failed to load module: /usr/lib/gio/modules/libgiogconf.so
However, it runs and it works! I’ll dig a little deeper when I get a spare moment.
Guess what? You’re absolutely right. I just tried it again, and it worked. All the extra stuff you had me do must have accomplished something. Before I talked to you I had only forced installation of amazonmp3.deb and run getlibs. That wasn’t enough. Nothing would download.
I still wonder why it seems to be looking for some libraries in /usr/lib/…
Thanks, worked great for me once I installed getlibs. A few other nice things – when you try to download an album, Firefox will ask you what app to open it with. You can point it to /usr/bin/amazonmp3 and tell it to always use it to get the downloads to start automatically. In my install, it writes the files to ~/Music/Amazon MP3, and Rhythmbox even picks them up automatically if you have it configured to place music files in ~/Music and watch for new files. So it should be one click from Amazon to Rhythmbox.
I had the same problem on jaunty with amazonmp3 not being able to connect. This worked (I did not look into how it worked):
sudo aptitude install lib32nss-mdns
From earlycj5. Thanks, dude(tte)! http://earlycj5.wordpress.com/2009/01/17/amazon-mp3-downloader-ubuntu-64-bit/
Thanks very much for this! I’ve wrapped everything up (along with an addition of –force-architecture I had to make to one step) here to make things a bit clearer (hopefully): http://dancingpenguinsoflight.com/2010/12/amazon-mp3-downloader-on-64-bit-ubuntu/
It’s not clear what additional steps you added. Nonetheless, I have no problem with you posting on your blog so long as you adhere to the Licence.
I added –force-architecture. Without that the second deb install failed on my system.