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.
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.
07-05-2016 09:20 PM
There's a few good reasons to separate compiled code from VIs.
Now, the option is also available for custom controls/type definitions. I'm wondering if there's any benefit whatsoever in separating compiled code from these? None of the reasons for separation apply to *.ctl files, after all. In fact, it might even be slightly detrimental -- in a few quick experiments, separating compiled code increased the size of the *.ctl files!
(Cross-posted at https://lavag.org/topic/19681-should-i-separate-compiled-code-from-source-file-for-ctl-files/ )
Solved! Go to Solution.
07-06-2016 05:03 PM
Hi JKSH,
Good question! After researching a bit, the first reason mentioned in the KB you linked (to simplify source control) seems like it might apply to .ctl files.
I'd guess that similarly to how changes in 1 VI results in unsaved changes within any VIs which call it, changes with a .ctl file can do the same. However, separating compiled code seems to make it possible to only make changes to one file at a time, without the domino effect.
Best,
David Randolph
Applications Engineering
National Instruments
07-06-2016 06:25 PM - edited 07-06-2016 06:26 PM
Yes, you should. It gets rid of some of those annoying mystery "you modified something but I can't tell you what" astrisks when you update a child ctl or move to a new LabVIEW version.
11-30-2020 12:29 PM
So, from the labview 2018 help "Do not separate compiled code from VIs that you intend to load or run using the LabVIEW Run-Time Engine. The Run-Time Engine cannot run these VIs because it has no access to the compiled object cache that stores the separate compiled code.
Is this true for built executables?
Does this mean that you can't remote debug these executables?
It was a no-brainer that I should do it until i saw this. what does it mean?
11-30-2020 12:56 PM
@David-n-MO wrote:
Is this true for built executables?
No, it is not. Built executables contain all object code. What the help is referring to there is if you are calling a VI file (not in a PPL or executable) with the RTE (ie dynamically from an executable).