cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
vijji123
Level 6

how to build installer from command prompt with out opening project

Hi.

How can we build installer from the command prompt with out opening project.
Do we need to write ant script or we have some other option.If help is available please provide me the links.

Thanks,
Vijji123
Labels (1)
0 Kudos
7 Replies
jijujacob27
Level 6

Hi Vijji123,

This can be done in several ways.
1. use the build.exe/ build.sh
2. use the ant task

Using the build.exe / build.sh
Using the build.exe/build.sh, we have several options, such as
Usage: build [ file [ options ] ]

Usage: build [ file [ options ] [ [ options ] ] ]


InstallAnywhere can perform command line builds using the options described below. On Windows, only the 'build.exe' executable will allow you to do command line builds. A project file must always be specified for command line builds. If no build configuration names are provided after the project file name,the configurations enabled for the project build will be built. If no build options are provided after the project file name, the configurations enabled for Project build with saved build targets for those configurations will be built. If a configuration name does not follow with any build targets, the saved build targets for that configuration will be built
If no build working directory is provided, the project file's parent directory will be used.

The options are as follows:

-? Show this help text
-v Print product version
-p file Use specified build properties file
-d directory Use specified build working directory
+ Add platform to build
- Remove platform from build
-all, -ALL Build all configurations
a,A AIX without VM option
av,AV AIX with VM option
h,H HP-UX without VM option
hv,HV HP-UX with VM option
j,J,o,O Pure Java option
l,L Linux without VM option
lv,LV Linux with VM option
s,S Solaris without VM option
sv,SV Solaris with VM option
u,U Generic Unix without VM option
n,N Named Unix without VM option
nv,NV Named Unix with VM option
w,W Windows without VM option
wv,WV Windows with VM option
x,X Mac OS X without VM option
web Build Web installers
cd Build CD-ROM installers
opt Optimize by platform
merge Build Merge modules


Any order and number of the options for platforms are allowed.

'-all' option can be used only when no other configuration names or platform options exists in the argument and must be the last argument

Example, launch a build with MyProduct project with the saved build settings for that project:

%build MyProduct.iap_xml

Example, launch a build with MyProduct project overriding the saved build settings for that project with a build properties file:

%build MyProduct.iap_xml -p Build.properties

Example, build for Mac OS X and Linux only (turning all others off):

%build MyProduct.iap_xml +X +L -S -J -W -WV -U

Example, build for some specific configuration names with different build targets:

%build MyProduct.iap_xml +x -l -x -l +h

Using the ant task
InstallAnywhere comes with an Ant task to build installers from Ant. The InstallAnywhere Ant task (iaant.jar) is located in your InstallAnywhere application folder:
\resource\build\iaant.jar
Tip To integrate the InstallAnywhere Ant task in an Ant project, remember to set the classpath of the InstallAnywhere Ant task to the location of iaant.jar.

Note The use of iaant.jar requires Java 1.4 or newer.

Ant uses an XML file to specify the order of tasks for your build process. More information on Ant can be found on the Apache Foundation's Ant Project Web site (http://ant.apache.org).

Add a task definition to your Ant project for the InstallAnywhere Ant task.






After defining the task, specify any parameter necessary for the build settings.

IALocation="C:\Program Files\InstallAnywhere 2010 Enterprise"
IAProjectFile="C:\Projects\myproject.iap_xml"
additionalparameter=value
>


win
false
true
SunJRE160_00i18nWin32.vm

...



Replace the IALocation value with the absolute path to your own InstallAnywhere application folder. Specify the path and file name of the project to build in the IAProjectFile parameter.
All other properties are optional. The parameters closely match the properties found in the BuildProperties.xml file.

You can build multiple Build Configurations that have been defined in the project by using an external BuildProperties.xml / buildproperties.properties file and the -p command line argument. For example:

IALocation="C:\Program Files\InstallAnywhere 2010 Enterprise"
IAProjectFile="C:\Projects\myproject.iap_xml"
additionalparameter=value
>




Please refer to the documentation for more information

Thanks,
0 Kudos
vijji123
Level 6

Hi Jiju,

Thanks for your reply, i have one question.

Can we build the installer outside the InstallAnywhere installation directory.
I mean by just shipping build.exe and BuildProperties.xml to some other location and build there it self.

I mean is build.exe dependent on only properties file only or InstallAnywhere's some other source also.

Actually i want to make build as Nightly build where we do not have entire InstallAnywhere source in the repository.


Thanks,
Vijji123
0 Kudos
pv7721
Level 20

As far as I know, the answer is "No!" as this would be against the IA license (see a thread about this here: http://community.flexerasoftware.com/showthread.php?p=452938
IA is licensed on a per user basis, on a single computer, so if you need it on more than one you need to purchase another license (as far as I know, there is a cheaper special build license type).
0 Kudos
vijji123
Level 6

Hi,

i am building the installer from the command prompt using build.exe.Here i have one problem i need to pass $PROJECT_HOME$ variable to the build. i am trying as below

>build.exe $ESIGN_HOME=C:\depot\Work\EsignInstaller C:\depot\Work\EsignInstaller\ESIGN_SERVER.iap_xml

but it's not taking that ESIGN_HOME command line argument.Where can i specify properties that are needed for IA project while building from the command prompt.

If i am building the project using GUI, it is asking for HOME and i am browsing the home directory.Stright forward if i want to build entire project right from check-out from the repository from the command prompt using build.exe where can i give the project specific properties.

Thanks,
Vijji123
0 Kudos
pv7721
Level 20

Are you using source paths or not?
0 Kudos
vijji123
Level 6

I am using sourcepath's, but after checking-out the code from source control system, stright away i am trying to build the installer from the command prompt.
using the command mentioned in my previous mail.so while building from the command prompt it won't know what $SOURCE_PATH$ is pointing to , so while building it simply saying can't find the source path.

My requirement is how do we pass arguments (either command or properties file) for building installer using build.exe.


At the moment it is source path in the future if i want to pass more arguments, how do i pass.I tried command line arguments style but project is not building it simply throwing exiting with error code.


Thanks,
Vijji123
0 Kudos
pv7721
Level 20

If you don't know what your source path points to, I wonder how can you build the project even in GUI mode. Anyways, what you might want to do is to preprocess the IA project right before building, so instead of trying to pass it as an argument, you might want to replace all its occurrences in the project with their value (pay attention though to (back)slashes (look how paths are saved in the project).
0 Kudos