11-03-2021 03:42 AM
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)
11-03-2021 04:12 AM
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.
11-03-2021 11:33 AM
@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).
11-05-2021 04:48 AM
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.
01-07-2022 05:14 PM
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.