06-24-2013 02:39 PM
I'm pretty new to LabVIEW. Anyways, I need to create a makefile that will install the LabVIEW runtime engine, and several LabVIEW user created executable VIs into specific directories determined by environmental variables within the makefile. I've been looking around, and all I can find is batch file stuff. Any ideas would be appreciated. Thanks.
In short, I need LabVIEW RTE, and several labVIEW created executables installed on target machine via a makefile.
Sebastian
06-24-2013 03:10 PM
Creating an "Installer" build specification will do that automagically.
06-24-2013 03:13 PM
To clarify the "automagically" operation
Then you have to set up the properties to your installer. It's very similar to the way you set up your .exe, but with different options (of course). I mean: the procedures are similar.
Regards
06-24-2013 03:54 PM
Thanks for the response. I've used the installer before. Can it be run from a makefile? I haven't been able to find anything. Also, everything needs to be setup via makefile without any user clicks.
Run the makefile, it installs the RTE, and executable VI.
In from what I've seen the LabVIEW installer doesn't allow for that. Also the path to install the executable needs to be read in from the makefile using an environmental variable. Thanks for the help.
Osvaldo
06-24-2013 07:35 PM
What is a "makefile"?
06-24-2013 08:19 PM
When you call the installer in the makefile, use the silent option. If in windows, something like "/qb" as told here by user Suse:
06-24-2013 09:00 PM - edited 06-24-2013 09:16 PM
Todd has pointed you in the correct direction.
I tested this with an LV2009 installer that does not contain the LVRTE. I do not use make files (not a C coder) but think they may run applications like a batch file (if not, use a batch file).
1. Create the installer for your LV app and point the top level to install in single generic folder (c:\temp).
2. Include the other executables you mentioned as line items.
3. Run the installer locally to generate a installation spec file: 'setup.exe /generatespecfile myspec.ini'
(The only question I noted was about the install folder which I set to #INSTALL_FOLDER#)
4. Open the generated 'myspec.ini' file and find the 'set install directories' area and you should find:
<RootDirectory1>=#INSTALL_FOLDER#.
5. For my confirmation test, I changed this to 'c:\testInstall'.
6. Run the installer using the updated spec file (add the later parts for auto install; for silent, use just /q):
'setup.exe myspec.ini /qb /acceptlicenses yes'
From your makefile (or batch file), you should be able to update the #INSTALL_FOLDER# string in the intermediate spec file (myspec.ini) to the contents of the environment variable you want by simple string replacement then run the installer as shown in (6).
good luck
11-13-2013 08:29 AM
Hello,
I have a follow up question on the Installation files it possible to be able to apply this to a touch panel from a thumb drive?
I'm thinking of building the executable file in labview as usual and use the local destination directory files in the install file.
My vision is to set up the install file to deploy the executable file to the Start Up folder while sending the corresponding data files to the target destination directory (c:\ni), then running the executable VI with a HORM feature to save the state of the machine.
Thanks.
11-14-2013 11:21 AM
Hello,
It seems like you should be able to apply this to your touch panel system. What touch panel are you using, and what operating system is it running?
Regards,
Shane C
11-14-2013 11:59 AM
At the moment, I'm setting this up on a NI 2212 but I'm making it for a 2206. I've changed my criteria a little. I'm trying to develop an independent VI which will disperse files from a thumb drive (the updated HMI code) like before, then disabling the HORM then reset the HMI automatically. At the moment I'm thinking of doing this using a sequence structure and I've found a way to search the Startup folder located on the HMI for a .exe file. This will allow me to find the previous application stored on the HMI and delete it then replace it with the new executable.
One thing that is a bit troublesome is setting paths. Pretty much all my paths are static, which I can understand but I know the thumb drive directory could change. My current solution isn't the best but what I've done is used the Current VI path and a Search/Split string function to extract that register and rebuild a new path. I'm then attempting to use a list folder function to search the drive for the new .exe file.
I fear I could have made it overcomplicated but I'm open to suggestions.