I recently upgraded nearly all of my 32-bit Linux installations to the
latest 64-bit Xubuntu "Lucid Lynx" release, and was chagrined to find
that I couldn't install the Amazon MP3 downloader. For whatever
reason, they've decided to only support a 32-bit installation.
Fortunately, 64-bit users can still install and use 32-bit packages
through a handy tool called
There's a thread about using getlibs on the
Ubuntu forums that I found helpful, but (for the amazonmp3 package, at
least) that tool alone is insufficient. I began by installing
getlibs and forcing the installation of
amazonmp3, which leaves it
without any dependencies and quite inoperable.
getlibs attempts to
resolve these 32-bit dependencies and install them outsite of apt system.
wget http://frozenfox.freehostia.com/cappy/getlibs-all.deb sudo dpkg -i getlibs-all.deb wget http://amazonm-002.vo.llnwd.net/u/d1/clients/en_US/1.0.9/amazonmp3_1.0.9~ibex_i386.deb?httpHeader%5FContent-Disposition=attachment%3B%20filename%3Damazonmp3.deb&marketplace=1 sudo dpkg -i --force-all amazonmp3.deb sudo getlibs /usr/bin/amazonmp3
At this point, you'll see a frustrating spew of "No match"
notices for various libboost libraries. Through
aptitude search libboost,
I realized that Lucid had upgraded to version 1.40.0, but
the Amazon was built for the 1.34.1 version that comes with
getlibs works within the constraints of your
current apt sources, so it couldn't resolve these dependencies.
No match for libboost_filesystem-gcc42-1_34_1.so.1.34.1 No match for libboost_regex-gcc42-1_34_1.so.1.34.1 No match for libboost_date_time-gcc42-1_34_1.so.1.34.1 No match for libboost_signals-gcc42-1_34_1.so.1.34.1 No match for libboost_iostreams-gcc42-1_34_1.so.1.34.1 No match for libboost_thread-gcc42-mt-1_34_1.so.1.34.1
Fortunately, the repositories for previous distributions are still accessible and can be searched fairly easily. Installing these dependencies manually through getlibs will make them available to the amazonmp3 binary.
sudo getlibs -w http://old-releases.ubuntu.com/ubuntu/pool/main/b/boost/libboost-filesystem1.34.1_1.34.1-11ubuntu1_i386.deb sudo getlibs -w http://old-releases.ubuntu.com/ubuntu/pool/main/b/boost/libboost-regex1.34.1_1.34.1-11ubuntu1_i386.deb sudo getlibs -w http://old-releases.ubuntu.com/ubuntu/pool/main/b/boost/libboost-date-time1.34.1_1.34.1-11ubuntu1_i386.deb sudo getlibs -w http://old-releases.ubuntu.com/ubuntu/pool/main/b/boost/libboost-signals1.34.1_1.34.1-11ubuntu1_i386.deb sudo getlibs -w http://old-releases.ubuntu.com/ubuntu/pool/main/b/boost/libboost-iostreams1.34.1_1.34.1-11ubuntu1_i386.deb sudo getlibs -w http://old-releases.ubuntu.com/ubuntu/pool/main/b/boost/libboost-thread1.34.1_1.34.1-11ubuntu1_i386.deb sudo getlibs -w http://old-releases.ubuntu.com/ubuntu/pool/main/i/icu/libicu38_3.8.1-2ubuntu0.2_i386.deb
amazonmp3 works correctly, although don't be surprised if you
encounter a few issues. For instance, it attempts to use load the
64-bit libgvfsdbus.so library on startup, but doesn't seem to care
when that loading fails. C'est la vie.
Updated 2010-11-26 09:05 to fix links to the .deb files. Thanks to Stefan for this info.