I need to get a native installer for Mac and Linux from an .air file. I'm on Windows and using AIR 2.5 .
I came across this interesting Windows application to convert an .air file to .exe/.dmg/.rpm.
I can not get it to work so did somebody else used it and can proof the functionality or can recommend a similiar app?
Thanks.
Uli
Here is an article from adobe to accomplish what you're trying to do here:
http://help.adobe.com/en_US/air/build/WS789ea67d3e73a8b22388411123785d839c-8000.html
I'm not sure if there are other applications that automate this process for you. There were a couple back when this functionality was first in beta but I think they're pretty much gone or incompatible. See here for a tutorial:
http://bishoponvsto.wordpress.com/2010/02/23/adobe-air-2beta-2-to-exe-packaging-air-app-in-windows-executable/
From the Air docs: "You must use ADT on the same operating system as that of the native installer file you want to generate."
I develop on a Mac and run Windows via bootcamp and with this setup I've been able to create native installers for both operating systems. Also it's worth noting that Adobe has abandoned support for Linux as for v2.6 so this may influence to what amount of trouble you're willing to go through to build an .rpm
you should use adt command.
adt -package -target native myApp.dmg myApp.air for MAC
and
adt -package -target native myApp.exe myApp.air fr Windows
Why not take a look at this article on NativeProcess functionality, it describes the process of creating a native installer. To quote some relevant portions:
To package the application, invoke the ADT application using syntax to package a native installer application version.
You must run ADT on the same operating system as the target installer application. To generate a DMG file, run ADT on Mac OS. To generate an EXE installer file, run ADT on Windows.
For example, the following command packages a DMG file on Mac OS:
adt -package -storetype pkcs12 -keystore myCert.p12 -target native NativeProcessTest.dmg NativeProcessTest-app.xml NativeProcessTest.swf NativeApps/Mac/bin/echoTestMac icons
Before running this command, open the Terminal application and navigate to the output directory for your Flex project. Adjust the following:
The path to the ADT application in the Flex SDK
The name and path of the signing certificate (given as myCert.p12 in this example)
For example, the following command packages an EXE installer file on Windows:
adt -package -storetype pkcs12 -keystore myCert.p12 -target native NativeProcessTest.exe NativeProcessTest-app.xml NativeProcessTest.swf NativeApps/Windows/bin/echoTestWindows icons
Before running this command, open a command line session and navigate to the output directory for your Flex project. Adjust the following:
The path to the ADT application in the Flex SDK
The name and path of the signing certificate (given as myCert.p12 in this example)
For more information on using ADT and on using signing certificates, refer to "Packaging an AIR application in a native installer" in Building Adobe AIR applications.
Captive Runtime will do something similar, but requires AIR 3 or later.
Related
I downloaded html-xml-utils-6.5.tar.gz and started compiling hxselect.c with mingw. I need a makefile, but the package is designed to generate the makefile. The build instructions are in a configure script, config.h.in file and makefile.in.
Is there a mingw-compatible tool to help generate the makefile? I am considering making a linux machine so I can run the configuration to get the generic makefile, and then bring that back for mingw to start chewing on...
Is there an easier way?
Thanks !
Assuming you've downloaded and installed mingw from [1], launch the MinGW Shell
from the start menu and then cd to directory containing the configure script and proceed as you typically do with autotools based projects:
./configure
make
make install
The purpose of MinGW is in fact to make available to Windows a minimalistic GNU environment (meaning shell and other tools) which allow you to work (mostly) as you would in an operating system with a full-fledged GNU userland (such as GNU/Linux). Occasionally it seems that MinGW is used to denote the windows port of the gcc compiler, but it should be empathized that MinGW actually denotes the Windows port of a (minimalistic) GNU environment.
[1] http://www.mingw.org/
I've never made a program into an executable for mac or ubuntu , and I've been looking into how to do this for some time now but didn`t got any results. I have been able to build my game for android, ios, windows(.exe) but dont have any idea about mac osx(.app file) or ubuntu (.deb file ).
If you're using eclipse, you could just export as a cross-platform jar (which would then work for mac, linux and windows)
Eclipse makes that really easy: File -> Export ... -> Java -> Runnable Jar File. There may be additional steps required to include assets like your app's images and sounds into this .jar file.
Btw, how did you turn it into a windows exe anyway?
Using Flash Builder 4.6, I exported an Adobe Air file from my mobile project.
I'm trying to get it packaged into an EXE (that would include the Adobe Air Runtime)
The project was compiled with Air 3.1. I looked online and there are some ADT commands that people recommend using but the problem is that the command throws errors in Air 3.1
If i use air 3.0 ADT:
AIR file at [app path]/app.air could not be converted.
The error was ""
If I use air 3.1 or air 3.2 sdk
SDK is missing file [my path to air]\lib\nai\bin\naip.exe
I'm running
java -jar [path to air]\lib\adt.jar" -package -target native app.dmg app.air
I've also tried
java -jar [path to air]\lib\adt.jar" -package -target native app.exe app.air
I've also looked into projects like this one: http://bishoponvsto.wordpress.com/2010/02/23/adobe-air-2beta-2-to-exe-packaging-air-app-in-windows-executable/ , but it is for Air 2.0.
Any ideas? Apparently there is an integrated Flash Builder 4.6 tool, but for some reason the option under export release doesn't exist for mobile projects - strange...
Why do you want to do this? Air files -- when exported for a specific platform -- are executables.
If you are looking for an "installer" that will create directories, run the Air installation, and move auxiliary files to specific locations (docs, icons, etc.), then try Inno Setup.
EDIT:
The code you provided works for me to create a Windows EXE. But it seems a bit unecessary . . . why not just export the EXE file from Flash Builder ("Export Release Build" button in the top toolbar)? If you can't or won't, then here are some suggestions:
I am using Java version 1.6.0_29. Make sure your Java is not only up to date, but that you are actually calling the correct version (java -version).
Check the JAR directory text carefully .
Check that you are actually calling to the right Air version.
Make sure that the quotation marks are on both sides of the JAR path.
You should be able to do a "Export Release Build" (though I am using FB 4.5). Instead of selecting "Export as: Signed packages for each target platform", select "Export as: Signed AIR packages for installation on the desktop". (You may have to create a certificate, but you can create one through this export feature, too.)
(If you happen to be able to use the Flash IDE, the exported Air file has to support both "Desktop" and "Extended Desktop".)
Hopefully, this will allow you to both produce an Air program that can be converted to EXE, and actually convert it using the command line.
I know this question is a little old, but a co-worker just ran into the same error message using the command line tools and FlashDevelop. It turns out that he was accidentally packaging some source files into the .air package, an extra copy of the app descriptor and one of the swc's was getting packaged in the .air file. I removed those and repackaged the .air file, then used this command:
adt.bat -package -target bundle kiosk kiosk.air
This successfully created a captive runtime exe. Of course there's no need to create a .air file first, you can package right to native or captive runtime, but since my co-worker was creating .air files I did it that way too just to be sure it would work.
I wok on desktop Adobe AIR application. It creates .DMG for mac os builds. It is actually command line application. What I want is the ability to call it from command line - add it .../*.app/Content/MacOS to $PATH. Is there any standard way to do it with AIR ? I need it to work on Windows as well.
Thanks!
No standard way, that's for sure. It's out of scope of AIR. You probably should do that with the shell - something like SET %PATH% = %PATH% + ... Assuming your AIR application has access to shell interpreter, it can do it on first run right after install.
I want to create a native installer for windows, mac and linux machines, Instead of .air file I want to create .exe , .dmg and .deb files respectively.
So that i can enable the application to be installed natively.
adt -package -target native target.exe source.air
adt comes from AIR SDK. For windows, you also need to have java 1.5 or higher on path for adt to work (not installed by default).
Edit: Instruction above are for windows. Also, on each platform it is possible to make native installer for this platform only - no cross-packaging exist for now.