From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Mass compile and separate compile code

Can someone explain to me why doing a mass compile when you have everything marked as separate compiled code still modifies all VI's it touches.

 

My understanding is that separate compiled code will store the compiled code outside of the vi in a temp location somewhere.

 

My understanding of the mass compile is that it will go through all VI's and recreate the compiled code that is stored somewhere else. In my mind this shouldn't modify the actual VI.

 

Is my understanding correct, anyone know what the mass compile is modifying in the VI?

 

It isn't a massive problem. It just means you have to commit every file to your VCS after a mass compile (Currently waiting for this to happen over a slow VPN connection which is why I have time to ask this)

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

I've only seen this happen when changing/upgrading my code from one Labview version to another.  My experience is limited to Labview 2013/2015/2018 (2018=current).

 

Did you enable the "Separate compiled code from source file" option for all code?  I remember having some trouble with this a few years back in Labview 2013.

 

I clearly remember the joy of not having all my code marked as "changed" with minor changes to global variables.

Message 2 of 5
(1,491 Views)

@Ettepet wrote:

I've only seen this happen when changing/upgrading my code from one Labview version to another.  My experience is limited to Labview 2013/2015/2018 (2018=current).

 

Did you enable the "Separate compiled code from source file" option for all code?  I remember having some trouble with this a few years back in Labview 2013.

 

I clearly remember the joy of not having all my code marked as "changed" with minor changes to global variables.


Good point.  Enabling that option in the options menu only affects new code.  For old code, you'll have to enable it in your project manually, then click the "Mark Existing" button to apply this to all the stuff in your project (won't affect dependencies).

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
Message 3 of 5
(1,461 Views)

all of my code is marked as separate compiled code and I haven't changed versions of LabVIEW.

 

I have this a couple of times. I have just put it down to LabVIEW changing some token in the VI. I just wanted to check my understanding of what the mass compile and separate compiled code functions actually do.

0 Kudos
Message 4 of 5
(1,404 Views)

I've come across this problem, specifically with LabVIEW classes. We have all VIs+objects marked to separate compiled code from source in our project, yet after a mass compile some LabVIEW classes update in git. The field at question is "NI.LVClass.FlattenedPrivateDataCTL" which is the binary .ctl representation of the VI. We haven't been able to find a workaround for this yet.

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