LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

LabVIEW Application Builder

Solved!
Go to solution

Hallo community,

 

I was curious about whether it was possible to automate the process of starting a LabVIEW Build in LabVIEW Version 6.0 or 7.0 Professional (UNIX Solaris/Linux).

 

The tool for generating an stand-alone executable is the so called "Application Builder" which can be opened via the menu bar under "Tools" in LabVIEW.

musa__0-1703072692504.png 

musa__1-1703072941047.png

 

My question would be if it is possible to run it without starting LabVIEW itself. The idea is to automate the process of building an executable without the GUI in a script.

(e.g.: user@solaris_pc:/opt/lv71/.../.../application_builder myProgramm.bld ) -> generates the .exe

 

FYI: the .bld file is the a build-file for the appbuilder so it know what to build an where to store the application.

 

I couldn't find the path of the "Application Builder". 

0 Kudos
Message 1 of 5
(1,313 Views)

I don't have an actual answer (LV 7.0 is 20 years old by this point and I never did this), but this might help point you in the right direction. In any case, I expect you will still need LV running, but you could possibly do the build programmatically. I also don't know if any of this will work on Solaris.

 

The first thing I would consider is looking for OpenG Builder, which I believe has the relevant code to do this. It looks like it builds an LLB and then calls the NI code to convert it to an EXE.

 

If that doesn't work for you, it seems to use VIs from project\prodisttool.llb, which is where the build dialog and its VIs seems to live, so you could possibly use that.


___________________
Try to take over the world!
0 Kudos
Message 2 of 5
(1,228 Views)
Solution
Accepted by musa_

Build standalone applications from command line - NI Community

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 3 of 5
(1,224 Views)

tst, gave you already a good direction. There are not that many options really if you talk about such an old version.

 

Building applications without a LabVIEW (Runtime) application is basically out of question. What you could probably do is to build an executable by using the OpenG Builder libraries mentioned by tst. This is basically the predecessor of parts of what got later VIPM. Then you could invoke that executable with command line parameters. Extra difficulty might be that LabVIEW 7 did not yet have VI server functionality to retrieve the command line parameters with which it or an executable was called. I'm not entirely sure when that was introduced, but LabVIEW 7.0 was indeed released in April 2003, so more than 20 years ago and my memory isn't anymore what it never was. 😀

 

In more recent versions you could also create a shared library from the OpenG Builder functions and then call that from your own C or whatever application but I believe that 7.x did not have shared library generation support.

 

Some of the OpenG Builder artefacts would be

DEAB:

https://sourceforge.net/projects/opengtoolkit/files/rsc_deab/0.10/

 

OPGB:

https://sourceforge.net/projects/opengtoolkit/files/ogrsc_builder/3.0.1/

https://sourceforge.net/p/opengtoolkit/svn/HEAD/tree/trunk/builder/

https://sourceforge.net/p/opengtoolkit/svn/HEAD/tree/trunk/package_builder/

 

However much of this was likely never tested on Solaris at all, and Linux support for LabVIEW at that time was only semi official.

 

Rolf Kalbermatter
My Blog
0 Kudos
Message 4 of 5
(1,220 Views)

musa__0-1704283299278.png

 

Here is the little VI I built with the help of the thread. 

 

Unfortunately I was not able to make an executable out of this VI because I can't build with the Application Builder and use it in my code simultaneously. But that's the "deadlock" which was described in the thread aswell.

 

Nevertheless I now can call this VI from the command line interface like so:

 

/opt/lv71/labview "/../AppBuilderForLV71" -- "/../myBuild.bld"

 

Note: use always absolute paths.

0 Kudos
Message 5 of 5
(1,102 Views)