This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature: Desktop Software

Using Adobe Flash and other 32-bit applications on 64-bit Linux

By Edward Amsden on July 24, 2008 (9:00:00 AM)

Share    Print    Comments   

64-bit computing is as prevalent today as multicore computing. Almost any new processor from Intel or AMD has the AMD long mode extensions, allowing the processor to use 64-bit registers. While 32-bit processors can address 4 gigabytes of RAM, a 64-bit processor can address 16 exabytes, or almost 17.2 billion gigabytes, of RAM. Most 64-bit-capable computers aren't making use of these capabilities, but instead are put to work running 32-bit operating systems, usually because of a lack of applications for 64-bit operating systems, since applications must be recompiled and in some cases rewritten for 64-bit operation. It is possible, however, to run 32-bit Linux binaries natively under 64-bit Linux kernels.

Here's a look at three cases where running 32-bit applications on 64-bit hardware can accomplish what you need. The commands in this article are for Ubuntu 8.04, but the software described should work for any Debian-based 64-bit Linux distribution.

Being a technology enthusiast, I decided to install the 64-bit version of Ubuntu on my new Toshiba laptop, equipped with an AMD Turion 64 X2 dual core processor. Most of the applications in Ubuntu's repositories have been recompiled for 64-bit support, so productivity is not a problem. Even the restricted drivers, such as the ATI frglx and the Atheros MadWifi drivers, came precompiled. I was writing documents, browsing the Web, chatting with Ekiga, and listening to music almost as soon as Ubuntu was installed. The joyride came to an end when I tried to find a video for one of my favorite new songs on YouTube. Apparently, the only plugin available for Flash video was the open source player Gnash, but it would not even display the YouTube video player.

Since I am also a (very amateur) musician, I also wanted to install one of my favorite software synthesizers, RTSynth, a physical modeling synthesizer which, alas, is free only as in beer because of concerns over patents on physical modeling. It is available as a binary only for 32-bit Linux. Normally I would set up a virtual machine for such a "problem program," but none of the virtual machine applications that run on today's hardware can meet the processing and latency requirements for sound work (especially physical modeling).

Where I live, we have a saying: "If you don't like our weather, stick around a few minutes, it'll change." Since our weather is so variable, we depend on weather radar more than forecasting for scheduling events affected by weather. The National Weather Service has looping weather radar pages that show the movement of storms and rain. These pages require Java, and Sun, like Adobe, is rather tardy about supporting 64-bit computers. In fact, Sun's Java doesn't even work with the plugin wrapper we will use for Flash. The good news is, Sun doesn't have the only the Java Runtime Environment (JRE) on the block.

32-bit binaries

As it turns out, the good people of Debian (on which Ubuntu is based) have already solved the problem of running 32-bit binaries on 64-bit Linux. The IA32 libraries provide everything you need to run 32-bit binaries. The command sudo apt-get install ia32-libs will install the libraries. If you get an error about an asound library being uninstallable, you should be able to fix it with the command sudo apt-get install libasound2=1.0.15-3ubuntu4.

That's it! Your 32-bit binaries and any included libraries should now be functional. As a test, I fired up QJackCTL, VKeyBD, aconnectgui (all native 64-bit applications), and the JACK version of RTSynth. After hooking up the outputs in QJackCTL and the MIDI from VKeyBD to RTSynth in aconnectgui, I was able to play a wonderful-sounding guitar from my keyboard. The 32-bit binary RTSynth interacted flawlessly with the native 64-bit programs.

Flash video the Adobe way

All well and good; I can get a relatively obscure, special-use binary to run natively on my system -- but how about that killer app of internet multimedia, Adobe Flash? The developers of the open source Gnash Flash player have been working in the dark for most of the project's life. The Flash Video and SWF container specifications were only just released, and Gnash has not yet had the time to make full use of the information. A key piece of the Flash specification, ActionScript, remains unreleased. For everyday use, we still need Adobe's Flash plugin. Yet even with the 32-bit libraries mentioned above, Flash will not install in Firefox.

The answer is a handy little tool called nspluginwrapper that installs under the 64-bit version of Firefox and can run the 32-bit version of Flash. To get Flash working, install the IA32 libraries and remove Gnash if it is installed:

sudo apt-get remove gnash

Install nspluginwrapper and Flash 9:

sudo apt-get install nspluginwrapper flashplugin-nonfree lib32nss-mdns

Flash 9 is not packaged, but the package installer script will fetch it from Adobe's download site and install it. Now simply install nspluginwrapper as a Firefox plugin:

sudo ln -sf /usr/lib/nspluginwrapper/plugins/npwrapper.libflashplayer.so /usr/lib/firefox-addons/plugins/ sudo ln -sf /usr/lib/nspluginwrapper/plugins/npwrapper.libflashplayer.so /usr/lib/firefox-3.0/plugins/

After restarting Firefox, you should have the Flash 9 plugin installed and working properly. Surf to YouTube or Google Video and find something interesting to watch.

Which Java?

And finally we have Java, the "write once, run anywhere" language that brought us our first taste of client-side Web interactivity. Sadly, Sun doesn't seem to think "anywhere" includes 64-bit machines, at least for Web applets. Sun's JRE is available for 64-bit Linux, but does not include a working browser plugin. However, the IcedTea Java plugin will run under 64-bit Linux. The following commands will install the IcedTea plugin for Firefox:

sudo apt-get install icedtea-java7-plugin sudo ln -sf /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/gcjwebplugin.so /usr/lib/firefox/plugins

Again, you will have to restart Firefox for the plugin installation to take effect. You should then be able to utilize Java applets in any Web page. For a test, visit the National Weather Service and watch the weather over Ohio.

"4 gigabytes should be enough for anybody!"

64-bit processors, operating systems, and applications are the immediate future of personal and business computing. However, most of the applications we use, as well as most of the platforms on which the modern Internet was built, were developed on and written for 32-bit computers, and not all of them have been or will be ported to 64-bit operating systems. In this area, Linux has met the challenge of backwards compatibility well, and has managed to avoid the usual annoyances that plague legacy application support. If you have been waiting to move to a 64-bit operating system because of lack of Flash support or issues with another 32-bit-only Linux application, you can now easily support that application alongside the rest of your better-performing 64-bit native applications.

Edward Amsden is a undergraduate majoring in computer science at the Rochester Institute of Technology. He is an open source enthusiast and programmer, and serves as the computer specialist for a nonprofit FM radio station.

Share    Print    Comments   

Comments

on Using Adobe Flash and other 32-bit applications on 64-bit Linux

Note: Comments are owned by the poster. We are not responsible for their content.

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 212.95.118.20] on July 24, 2008 09:16 AM
"4 gigabytes should be enough for anybody!" never ever! 8 gigs and up rockz, everythingelse is just crap!
i really love 64-bit-systems, on my home-pc i run (for sure) linux, on the office-pc i (must) have vista ultimate, its okay but linux rockz anyway! greetings! http://kw.daten-24.de

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 194.46.255.50] on July 24, 2008 10:24 AM
Hi, I am just curious, what model Toshiba laptop did you use?

I purchased a Satellite L300-10Q, AMD 64 x 2 Turion processor. I upgraded the ram separately to 4GB, but for the moment I have not taken the plunge to scrub Vista. At present I am using Vista as a host for Ubuntu 8.04 LTS Desktop in a VirtualBox VM. I had problems booting the live 64bit CD and then once I succeded not all of the drivers seemed to be available. I had to disable the network card in the bios just to get the live CD to work. Yes, I would like to use Ubuntu 64 bit, but as I only have the one laptop and limited external storage resources and going from what I have read so far Ubuntu 64 bit seems to be lacking or unstable compared to the 32 bit edition. The laptop is only 6 weeks old, maybe in another month or two I will take the dive. Thanks for the article.

#

64 bit Debian

Posted by: Anonymous [ip: 147.206.4.254] on July 24, 2008 03:07 PM
I can't directly speak to 64 bit Ubuntu, but I have used the x86-64 (i.e. AMD64) build of Debian for over two years, and it seems to be completely prime-time ready.

Also, if you don't want to ditch Vista just yet, you can just partition off a bit of your hard drive and install Debian or Ubuntu alongside it until you are confident. 5 gigs of disk space would be plenty, even if you want to install a ton of packages (you can actually do a lot in much less space than that).

btw, there's nothing wrong with just using Debian instead of Ubuntu. It is not "difficult", and it is easier (for me at least) to see what is actually going on with your system. The only pitfall might be that your very new machine might have hardware that is not supported by Etch (the latest stable release).

#

Re: Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Edward Amsden on July 24, 2008 03:17 PM
"I had to disable the network card in the bios just to get the live CD to work."

The kernel version on the live CD has issues with the BIOS of many of the new Toshiba laptops.

Install the OS, then grab the latest linux-image package from the ubuntu repositories and put it on a thumb drive. Install it, re-enable your network card, and run update-manager. The latest kernels do not have the issue.

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Lennie on July 24, 2008 10:50 AM
Well, the Sun Java runtime's source is available, so we will be seeing it in the next version of Ubuntu, etc. And there already is a 64-bit version of for example Ubuntu available. So I think we can tick that box in a number of months.

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 85.89.169.2] on July 24, 2008 12:26 PM
IceTea Java has issues with some applets. I couldn't use uploading applet on Humyo (web-based storage space) and some parts of my banking system. I ended up installing 2 versions of Firefox: 32 bit for Java and 64 bit for everything else. That also means I have a 32-bit Sun JRE for java applets and 64-bit Sun JDK for Java apps. Quite inconvenient. I hope we'll get a working 64-bit plugin in a few months.

#

Re: Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 32.97.110.142] on July 24, 2008 03:03 PM
Re: Java 64-bit browser plugin.

We've been waiting for years for Sun to get off its butt and release it, but they continually push it off to future versions and have been since Java5. Last I saw they were promising to have it for Java8, so I wouldn't hold your breath.

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 24.248.89.66] on July 24, 2008 03:15 PM
Some corrections to the article:

There is both Gnash and Swfdec as free solutions. Gnash used to play youtube, but then youtube updated their player from flash 7 to 9.

Also if you want to use a free software solution to view youtube, you can simply download the video using clive or youtube-dl and then watch it in mplayer.

OpenJDK works better than IceTea and should be recommended for install instead.

#

Re: Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Edward Amsden on July 24, 2008 03:20 PM
"There is both Gnash and Swfdec as free solutions."
I tried both, and neither play many common flash applets. This article is about using software that is only available as 32 bit binaries, not as source. So for people who need Adobe's flash, this is the solution.

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 86.52.5.27] on July 24, 2008 05:01 PM
I run 64-bit Ubuntu 8.04 as well. Usually I just install "Ubuntu-restricted-extras" and it will install most apps mentioned in your article (flash, 32bit libraries, sun's java + microsoft fonts, mp3 and a few other goodies which most people want on a desktop anyway)

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 70.61.172.226] on July 24, 2008 10:57 PM
You realize its silly to have to jump through hoops like this to run 64bit linux.

Sun Solaris does a lot of things wrong, but they've done 64bit right. 64bit kernel, 32bit userland. If you need more than 4GB VM, compile the app for 64bits.

Remind me again about the great performance improvements I get with a 64bit 'ls', and a 64bit 'firefox'? <pft>

"Here's a nickle kid, get yourself a real computer."

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 210.8.218.110] on July 25, 2008 04:40 AM
The hoops you have to jump through are not the fault of 64 bit LINUX - it is the fault of closed source software vendors. 64 bit is and has been bullet proof for quite a while.

You have to jump through hoops becausre you're trying to force backwards compatibility on a system where one of the main design philosophies (of the kernel) is not to overburden itself with backwards compatability. While extensive backward compatability it is a "feature" in Windows, it is also a major problem, filling the system with spaghetti code and allowing for all kinds of sloppy code using undocumented and unsupported API calls making the need for backwards compatability a self fulfilling prophecy. I'm sure the Wine guys have all sorts of nightmares having to reproduce Windows "features", talk to some of them and see if long term backward compatability is a good idea.

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 24.97.36.195] on July 25, 2008 04:53 PM
There aren't really any bigger hoops to jump through for 64 bit Ubuntu than for Solaris. Just install the 32 bit libraries and you can run the 32 bit version of any app you wish, including the browser if you want. In fact, most of the things recommended in the article can be done much more automatically with Synaptic by simply selecting the appropriate metapackage to install.

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 70.102.65.73] on July 25, 2008 10:05 PM
It's pretty amazing that this is still necessary. I just discovered today that even Flash 10 is still limited to 32-bit. It is 2008, for crying out loud! Granted, Linux migrated to 64-bit first, and Linux users are more likely to adopt new technology, but Windows 64-bit has been out for a while. Is Adobe planning to port to 64-bit sometime this century?

#

Using Adobe Flash and other 32-bit applications on 64-bit Linux

Posted by: Anonymous [ip: 90.192.113.143] on July 26, 2008 02:49 PM
Good work!
This is something that's been bugging me - I was seriously considering downgrading Ubuntu to the 32 bit version. I just with the people who prepared the various releases would take the time to do this -it's the kind of thing that differentiates play O/S's from ones that people can actually use.

#

RPM rules in the world of 64 with 32-bit in Linux

Posted by: angrykeyboarder on August 08, 2008 10:32 AM
Debuntu's 32-bit solution on 64-bit Linux has limited use. There are still a number of 32-bit-only apps (e.g. gizmo5) that won't run without a lot of hacking.

The best solution is to abandon Debian based distros and go with RPM,. On Distros like Fedora and openSUSE you can install any 32-bit software right along with the 64 bit stuff (you know, just like in Windows Vista x64). It's much easier than what you can det on Debuntu. Untill APT is rewritten to support multiple architectures in one OS, Debuntu will be left in the 32-bit dust.

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya