LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How can I determine which Additional National Instruments Installers to include in an Installer Build?

In the process of creating an installer for my VI I am aware that from the Category list, you can click Additional Installers to display the Additional Installers page, which you can use to include National Instruments product installers that you need in the installer build. Also I am aware that The National Instruments Installers to Include listbox contains a list of the installers available on the computer.

 

Once I created a VI and subsequently created a build EXE file, how do know which "Additional Installers" to include.  I have a long list of choices on my machine.  Just because it is on my machine does not mean I used it in the current application.  How can I find out which ones I did use so that I can select the correct additional drivers?

0 Kudos
Message 1 of 13
(3,953 Views)

I believe that, by default, LabVIEW ticks the ones used by your EXE's source code. No?


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Kudos
Message 2 of 13
(3,949 Views)


No I do not think so.  VISA was not checked by default.  After the creation of the install application.  The application was installed on a computer without Labview and an error appeared stating that VISA was needed.  So I recreated the install attemtping to add VISA and still got another error.  In either case VISA was not checked automatically.  What if I am using a module and do not realize I am using it.  This is why I am wondering How can I determine which Additional National Instruments Installers to include in an Installer Build?

0 Kudos
Message 3 of 13
(3,939 Views)

There have been a number of ideas in the LabVIEW Idea Exchange geared towards improving this situation. At the moment, the installer does have limitations. I would suggest kudoing the ideas in the Exchange so they get more visibility when NI decides what to improve in subsequent versions of LabVIEW.

0 Kudos
Message 4 of 13
(3,920 Views)

@TiTou wrote:

I believe that, by default, LabVIEW ticks the ones used by your EXE's source code. No?


No, unfortunately not.  I have to manually select Visa even if I am using Visa functions in my application.  It would save time if it did.

-----------------------------------------------------------------------------------------
Reese, (former CLAD, future CLD)

Some people call me the Space Cowboy!
Some call me the gangster of love.
Some people call me MoReese!
...I'm right here baby, right here, right here, right here at home
0 Kudos
Message 5 of 13
(3,913 Views)

I agree that this is currently confusing. For example if you simply look at the "Run time engine" subsection, there are additional components (e.g. "Math kernel library", NI error reporting", etc. with no explanation under what conditions they are required. Well, we can take a wild guess, but we cannot be sure.

 

Even more confusing is if we compare it with the options presented when downloading and installing the same version standalone run time engine manually instead. Here we are also presented with a dialog of optional components (Features!), but the choices have very little resemblance with the choices presented in the installer builder (libraries and other files). For example the math kerrnel libraries or NI error reporting are not listed.

 

In fact there is very little resemblance (= basically no resemblance!) between the choices we are presented when installing the standalone run time engine versus the choices we have when including the run time installer with the build.

 

Here are the two scenarios, see for yourself if you don't believe me 😄

 

Since we are talking about the same runtime engine containing optional components, shouldn't these two scenarios give the same choices? Just asking 😉

 

Installer builder:

 

 

 

Run time engine installer:

 

 

Download All
0 Kudos
Message 6 of 13
(3,887 Views)

When you're installing LabVIEW RTE manually on your computer, you will be building any number of VIs and projects, so it's usually better to give the user all components of the RTE so they don't have to go back to the installer over and over again whenever they're creating a new type of program.

 

When you're building an application installer your needs are much more limited and defined. This will usually involve running one project and all it's VIs, so every time you run it you will need the exact same parts of the RTE. There (should be) no chance of a new function or subVI appearing in your program without you having to rebuild the installer and having a chance to add in any necessary additions to the RTE. This also helps because users are often concerned about the file size of their installer so they can limit how much of the RTE is installed to control this.

 

I hope that helped if you need any more detail or have further questions feel free to reply.

Miles G.
National Instruments
Staff Applications Engineering Specialist
0 Kudos
Message 7 of 13
(3,851 Views)

Understood.

 

Still we are presented with several choices where we cannot really make an informed decision. Let's take the math kernel library.

Searching the NI site, lands us on this page where it says:

 

"This software is used for all mathematical functions available in the LabVIEW environment.  In the development of these functions, LabVIEW has compiled the Intel® MKL into our code directly."

 

  • I can only guess what "all mathematical functions" really are. Does the "+1" primitive require it? It is a mathematical function!
  • It is difficult to imagine a program that does not require any mathematical function.
  • Is it only require for more advanced functions in the math palette? Is there a comprehensive list?
  • Since the quoted article states that it is compiled into the code, why is it even a separate installer option?
  • What happens if I omit it and it is actually needed?

In line with the topic of this entire discussion, only the LabVIEW compiler really knows if it is needed or not, so that should be handled transparently behind the scene. No need to bother the programmer with details that are better and more accurately handled by LabVIEW itself.

Message 8 of 13
(3,829 Views)

Your concerns are valid and I'm sorry all of this isn't more clear. To answer some your questions we call the MKLs underneath for most linear algebra functions in LabVIEW, CVI and Measurement Studio. If you try to run something that requires the MKLs and they were not included in the installer build then the VI will stop and search for the MKLs and error out if it can't find them.

 

I understand some of the vagueness when it comes to installers might be frustrating. The best way to deal with this is to post about this on the NI Idea Exchange that smercurio_fc mentioned early. I went ahead and looked around for some related ideas and I see you've already been commenting on and promoting several of them. This input is appreciated and I encourage you to continue to do this. NI definitely takes note of popular ideas on the idea exchange when they are developing. 

Miles G.
National Instruments
Staff Applications Engineering Specialist
0 Kudos
Message 9 of 13
(3,803 Views)

@smercurio_fc wrote:

There have been a number of ideas in the LabVIEW Idea Exchange geared towards improving this situation. At the moment, the installer does have limitations. I would suggest kudoing the ideas in the Exchange so they get more visibility when NI decides what to improve in subsequent versions of LabVIEW.


I suggest to vote for this idea : http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Detect-runtime-installers-needed-for-installed-compone...


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Kudos
Message 10 of 13
(3,767 Views)