LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
CaseyM

(Optional) Build Application in a Separate Process

When building applications that use many different toolkits and classes, my build times can skyrocket.  It's frustrating that while i'm waiting for my application to be built LabVIEW is useless for development.  This is especially aggravating when I find a bug that takes 20 seconds to fix, but then building the application takes another 20 min.  To address this issue I propose that there be an option to launch the build process in a separate process from the IDE so that I  can continue working with my code in the meantime.  This could mirror the FPGA compilation process where it used to block development but now is separated out.

 

Why optional though?  For smaller applications the build process is very quick so if you can live with it I wouldn't want to always introduce the extra overhead that I assume would be necessary to lauch the build as a separate process.

CLA CLED AF Guild
10 Comments
crossrulz
Knight of NI

But this would allow you to change the code the build is using during the build process.  That just sounds like a configuration nightmare.

 

I'm pretty sure this is a duplicate, I'm just too busy right now to do a search.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
altenbach
Knight of NI

> But this would allow you to change the code the build is using during the build process.  That just sounds like a configuration nightmare.

 

Yes, it would need to make a snapshot copy, and build from there. Some protection needs to be built-in, so you cannot start a new build while the same built is already in progress. etc.

 

> I'm pretty sure this is a duplicate, I'm just too busy right now to do a search.

 

Yes, it looks very similar to this old idea.

X.
Trusted Enthusiast
Trusted Enthusiast

Just start a new LabVIEW instance.

You need the Multiple Instance ini entry for that: http://digital.ni.com/public.nsf/allkb/AB268878693EF4B586257037004A6725

CaseyM
Active Participant

I had searched for other ideas similar to this one but I obviously didn't use the best terms so apologies if this is a somewhat of a duplicate.

 

A few responses to the comments:

 

>> But this would allow you to change the code the build is using during the build process.  That just sounds like a configuration nightmare.

 

>Yes, it would need to make a snapshot copy, and build from there. Some protection needs to be built-in, so you cannot start a new build while the same built is already in progress. etc.

 

 

Some sort of snapshot is also what I had in mind when I wrote this, but I'll leave the techinical details up to those at NI.  I just don't want all my time tied up during a build process.   This is especially relevant after releasing a new stable version an application only to find a some minor bugs where the majority of the time goes into the build, rather than any fixes.

 

>Just start a new LabVIEW instance.

 

Wouldn't this only work if you did your own "snapshot" of the code for one instance to build upon while you used the other to develop with?  I don't know of an easy way to do this.

CLA CLED AF Guild
X.
Trusted Enthusiast
Trusted Enthusiast

Usually, you "Save All" before you build, right?

Now, save that snapshot with version control (you are using version control, right?).

Build and launch another instance to continue your work.

GregSands
Active Participant
Would it be easy to lock all files that are part of the build (rather than creating a snapshot) but allowing work to continue on other files? That would be enough for my (very seldom) need for this.
CaseyM
Active Participant

I'll have to try the multiple instances thing, but I'd still like an NI supported, automated way to do this.  😛

CLA CLED AF Guild
Oligarlicky
Member
One good model for this is FPGA compiling. It takes a snapshot and builds from there. With the multiple instance method, it seems like you could be part way into editing a VI when the app builder grabs it.
Darren
Proven Zealot
Intaris
Proven Zealot

@Oligarcky, FPGA compiling actually transcodes the G into a format the Xilinx compiler understands, so the G source files and the FPGA source files are actually not the same.  It exports to a completely different format before compiling.  This is why you can still edit the G source files while the Xilinx compiler is running.