10-23-2013 07:13 AM
If memory serves, I had to force a compile at least once before the separate took effect. The mass compile did it for me when I made that change on a project to separate compiled.
10-23-2013 07:33 AM
Worth a try. Thanks. I will have to wait until a good time to be able to check in all files to SVN again. I'll report back when I've tried it.
10-23-2013 08:07 AM
Have you tried to place your items in a project and use the project property to set compile source as separate. It seems to work for me without problems.
10-23-2013 10:37 AM
Huh....I tried looking for a global setting on the project in the past. I never knew that was there. I will try that after our next SVN branch merge.
12-05-2013 09:29 AM
I am in the process of running your tool. Will let you know how it works. What prompted it for me is that an instrument class I was working on has one of the files show up as modified when I open it, and it is one of a very long list. This beats opening them all up and checking them by hand, and I couldn't figure out how to check it programmatically. I will get around to figuring it out, eventually. 🙂
Mike
12-05-2013 10:14 AM
I have now setup my project so all VIs, class, controls, etc all have seperated compiled code. Also all new items created will have seperated compiled code. I've mass compiled everything. From my experience, it has absolutely no effect. Anytime I change a subvi, any VI that calls it wants to be saved as well. Maybe I don't have a good understanding of how this should work, but I thought it was to prevent unnecessary save requests, right?
In the mean time, I've also moved to LV 2013. It doesn't seem to help in 2013 either.
12-05-2013 10:22 AM
@thutch79 wrote:
I have now setup my project so all VIs, class, controls, etc all have seperated compiled code. Also all new items created will have seperated compiled code. I've mass compiled everything. From my experience, it has absolutely no effect. Anytime I change a subvi, any VI that calls it wants to be saved as well. Maybe I don't have a good understanding of how this should work, but I thought it was to prevent unnecessary save requests, right?
What are you actually changing in the subVI?
If you change the code of the subVI, no changes need to be made to the caller. if you change the name of the subVI, the caller needs to be updated, of course.
(not sure what happens for inlined subVIs...)
12-05-2013 10:41 AM - edited 12-05-2013 10:43 AM
To follow up and expand on Christian's points.
Some changes to a sub-vi will always require a recompile of the caller. Some of these are obvious if you really think about it, some are not so obvious. But, if you break the interface to the caller (the connector pane) you will need to resave the caller
This list is not necessarilly complete
12-05-2013 12:42 PM
I haven't paid too much attention to what's changing versus what callers require saving. I'm sure it's my understanding of the feature that is lacking. Thanks for the list.....that's helpful.
01-23-2014 01:54 PM
I too am disappointed- I was hoping that enum typedef changes would stop trying to recompile everything that called them. I guess this cannot be prevented- not sure why as I assumed that the "source" part of the file only contained the block diagram itself and not the compiled code. Which makes me wonder, what situations WOULD this option prevent LabVIEW from recompiling files that were not physically changed in? The enum typedef propagation was one of my chief frustrations when trying to use LV with source code control.