Definitive howto: Flex Builder 3 in Ubuntu Linux 9.04
Two weeks ago I had to reinstall Ubuntu. Yesterday I spent some time setting up Flex Builder in my new Linux installation. This time I faced even more difficulties than the last time, months ago. Definitely, Adobe is not paying much attention to its Linux developers — looking through Adobe.com and Adobe Labs, stuff regarding Flex development in Linux stays pretty much as (bad as) it was one year ago or so.
I finally managed to get the Flex 3 IDE and version 3.0.0 of the AIR SDK to run with Eclipse 3.3.2, and to launch both the AIR runtime and the Flash plug-in for Firefox from within Eclipse as needed (run and debug modes).
The process is no apt-get install, and is not well documented. At the end I combined instructions and tips from Adobe Labs, one or two comments from forums and the workaround for a bug filed in Jira. This recipe summarises the process in detail and, following it step by step, in a few minutes you will be running Flex Builder 3 in Ubuntu 9.04 Jaunty Jackalope. This recipe might be applicable to other versions of Ubuntu, and even to other Debian-based distros.
There are six main steps:
- Install a JRE
- Install the Eclipse SDK
- Install the FB3 plug-in for Eclipse
- Back up one SWC library
- Upgrade the AIR SDK
- Repair the offending SWC library from the backup
A few notes before going into details. First of all, bear in mind that the Linux version of FB3 is an unsupported alpha, and that some key features are (still) missing in it. The most important one is the design view, but also the states view, the profiler and four other features. If these are important limitations for you, you might need to consider virtualisation instead (or a different base OS altogether).
Second, there is no stand-alone FB3 for Linux. Flex developers running Windows or Mac OS are used to installing either the FB3 plug-in on top of an existing Eclipse installation or the FB3 stand-alone bundle provided by Adobe. In Linux, on the other hand, there is no option but to install the Eclipse SDK first, and then the FB3 plug-in on top of it.
Third, Java is a dependency: the FB3 plug-in needs Eclipse, and Eclipse needs a JRE.
Fourth, if you plan to build AIR applications for the desktop (as opposed to Flash applications for the web) you might need to install the AIR runtime separately, in addition to the steps listed here.
Finally, here I use Bash commands to illustrate these steps in detail and without ambiguity; but most of these steps, if not all of them, you can accomplish using your file manager and visual tools of choice instead.
- Install a JRE
$ sudo apt-get install sun-java6-jre
This will also install
sun-java6-bin.
You can now check that Java has been installed successfully, the usual way:$ java -version - Install the Eclipse SDK
From all the bundles that Eclipse.org provides, pick and download a minimal Eclipse SDK (you won’t need all those fancy plug-ins, and they can be added after the installation anyway).
Whatever the bundle, it needs to be version 3.3.x, codename Europa.
The IDE “for Java developers” [Europa] is the best option:$ wget "http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/europa/winter/eclipse-java-europa-winter-linux-gtk.tar.gz"
Extract the files from the archive and then move the base
eclipse/directory to, for example,/usr/local/:$ tar -xzf eclipse-java-europa-winter-linux-gtk.tar.gz $ sudo mv eclipse /usr/local/
Create a permanent workspace for Eclipse:
$ mkdir ~/eclipse-workspace/
Launch Eclipse:
$ /usr/local/eclipse/eclipse &
- Install the FB3 plug-in for Eclipse
Download Flex Builder for Linux and give yourself permission to run the file:$ wget "http://download.macromedia.com/pub/labs/flex/flexbuilder_linux/flexbuilder_linux_install_a4_081408.bin" $ chmod u+x flexbuilder_linux_install_a4_081408.bin
Create a new directory for FB3 and make it your own:
$ sudo mkdir /usr/local/flex-builder/ $ sudo chown $USER:$USER /usr/local/flex-builder/
Run the installer:
$ ./flexbuilder_linux_install_a4_081408.binAccept the license.
When asked where to install Flex Builder, browse to the directory you just created (/usr/local/flex-builder/).
When asked where Eclipse is currently installed, browse to the directory where you copied Eclipse (/usr/local/eclipse/).
If you plan to develop for the Flash Player, tick the option to install the debug version of Flash Player 9 for Firefox (but you might be able to download it separately anyway).
The “pre-installation summary” should look similar to this:Once the installation finishes you can launch FB3:
$ /usr/local/flex-builder/Adobe_Flex_builder.sh &
Flash projects will run fine …but most likely AIR projects won’t work. When you try to build and launch an AIR app, you will see this error message in Eclipse:
- Back up one SWC library
$ cp /usr/local/flex-builder/sdks/3.0.0/frameworks/libs/air/airglobal.swc ~
- Upgrade the AIR SDK
Download the AIR SDK for Linux to a temporary directory and uncompress it:$ mkdir ~/tmp-air/ $ cd ~/tmp-air/ $ wget "http://airdownload.adobe.com/air/lin/download/latest/air_1.5_sdk.tbz2" $ tar -xjf air_1.5_sdk.tbz2 $ rm air_1.5_sdk.tbz2
Delete the current SDK 3.0.0
runtime/directory from the FB3 installation directory:$ rm -rf /usr/local/flex-builder/sdks/3.0.0/runtimes/
Overwrite the SDK 3.0.0 with the version you downloaded (it will overwrite some files — that’s fine):
$ cp -a ~/tmp-air/* /usr/local/flex-builder/sdks/3.0.0/
Replace these two files:
$ cd /usr/local/flex-builder/sdks/3.0.0/bin/ $ rm adl_lin adt_lin $ mv adl adl_lin $ mv adt adt_lin
Create this new symbolic link:
$ cd /usr/local/flex-builder/sdks/3.0.0/runtimes/air/ $ ln -s linux/ Linux
Now it will almost work. When you run FB3 and try to run an AIR app, you will get this error:
- Repair the offending SWC library from the backup
$ cp ~/airglobal.swc /usr/local/flex-builder/sdks/3.0.0/frameworks/libs/air/
This will fix the previous error. Try to build Flash and AIR apps again in FB3; everything should work fine.
During the first initialisation it will prompt for a workspace. Browse to the directory that you just created (~/eclipse-workspace/).
Check that Eclipse works (you can write and run a helloworld in Java).
Close Eclipse.
20 Aug 2009 — Adobe Flex, Computers, Images, Work




Great tutorial. Perhaps you could help me with a little problem and this configuration. I can see everyday the following message in my FB status bar: “Flex Builder Linux will expire in X days.” and X is aproaching quickly to 0. What I’m supossed to to when that sad event happens? Is it any way to avoid the expiration time? Will I have to reinstall everything? Thanks for your help :-)
AFAIK, the Flex SDK (the command-line compiler, the packager, etc.) are open source; both free and gratis.
Flex Builder, on the other hand, is proprietary in both its incarnations and for all platforms. What you are using is a 60-day trial. Once it stops working you can buy a license, if you want.
Check out also special offers or programmes that Adobe has for students and the unemployed.
No, despite the fact that I’m more than willing to pay for a working Linux version of Flexbuilder for Linux, Adobe doesn’t want my money, as strange as it may sound…Adobe has decided to cancel this product.
Q tal amigos saludos, mi duda es; por q no puedo visualizar en el firefox el resultado de mi programa, al compilarlo y/o ejecutarlo desde eclipse automaticamente se abre el navegador pero no muestra ningun resultado de la programacion. Estoy usando una distribucion Ubuntu 9.04 (32 bits), quisiera q despejaran mi duda no se si sera por la version de flash player q tengo instalada (ver 10).
A si tambien instale la version de Adobe Flex Builder Linux 3, ya se q adobe a decidido no desarrollar mas esta version para linux debido a, sugun ellos, el poco interes de los usuarios de software libre. Sera q necesito otra version de Adobe Flex ? O ay una solucion a mi problema ?
Hey great tutorial …! Easy way to install Flex
[...] main workflow for the plugin installation was already described in the tripu blog for Ubuntu 9.04. We still can take parts of it to follow. Meanwhile some things have changed: [...]
Hi tripu i followed you procedures and it worked! thanks a lot your a big help on us! specially to those who are newbie on using eclipse and flex like me. but i got a little problem i open the eclipse europa IDE and i created a new flex project but i see nothing on my MXML editor, oh this is embarrassing im new on this one thanks a lot.
juanan: sorry, I think I know what you mean now. The process to enter a valid license key in FB3 for Linux is somewhat cumbersome, and it’s not very well documented. I think I did it once, following some comments I found on the internet. Good luck!
Miguel Ángel: según lo que dices, puede estar fallando por varios motivos. ¿Puedes concretar más y describir exactamente la secuencia de acciones y los mensajes/reacciones que ves? Quizás así damos con la tecla.
mcris: FB3 for Linux does not have a “design view”: http://labs.adobe.com/technologies/flex/flexbuilder_linux/releasenotes.html#features I guess that’s what is bothering you?
java version “1.6.0_18″
Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
Java HotSpot(TM) Server VM (build 16.0-b13, mixed mode)
I have installed eclipse from your URL and the installations still FAIL. It say that eclipse is 64 bit, but is not.
Any comment about it ?
Thank you
saymont: what exactly “FAILS”? I guess you mean the installation of Eclipse. How does it fail? Where does it say it’s 64 bit? What is your environment?
I have this error plz send me your comments
Launching installer…
Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)
Stack Trace:
java.lang.NoClassDefFoundError: Could not initialize class java.awt.Toolkit
at java.awt.Component.(Component.java:568)
at com.zerog.ia.installer.LifeCycleManager.g(DashoA8113)
at com.zerog.ia.installer.LifeCycleManager.h(DashoA8113)
at com.zerog.ia.installer.LifeCycleManager.a(DashoA8113)
at com.zerog.ia.installer.Main.main(DashoA8113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at com.zerog.lax.LAX.launch(DashoA8113)
at com.zerog.lax.LAX.main(DashoA8113)
This Application has Unexpectedly Quit: Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)
support@supportuhth:~$
ok my problem is succefull thanks for you attention
Thanks a lot …..It was very helpful
Nice article ! I wish I had found this tutor earlier , it could have saved me some struggling days…
@mcris : To avoid the MXML editor bug, you may use an old Eclipse (3.3) or use the patch:
http://ducquoc.wordpress.com/2010/10/26/flexbuilder-eclipse-plugin/
:-)
I’m finding that the flex debugger fdb disconnects from the browser at random times (“player session terminated”). It doesn’t matter which browser I use in linux (FF, Opera, Epiphany, Chrome, etc). It also doesn’t matter if I use Adobe’s player debugger version 10 or version 9.
Anybody else have this problem? Any fixes?
really good tutorial,