====== Deployment ====== ===== General Tips and Tricks ===== === Compiled Object Caches === If using the [[https://hampel-soft.com/blog/separate-compiled-code-from-source/|Separate compiled code from source]] option, setting the following key in the [[kb:labview:ini-keys|LabVIEW.ini]] file might add to the robustness of deployments: useCacheForDeployment=False ---- ===== Unclear Error Messages ===== === Symptom === * After updating an RT system with a new ''startup.rtexe'', it is not executed, although the build was successful. * When deploying (not when building) from the development environment, LabVIEW reports for arbitrary VIs (mostly those from the LabVIEW basic functions) that they cannot be deployed. The error message, for example, as shown in the screenshot. {{:kb:ni-rt:pasted:20210722-102440.png}} === Root cause === The problem is most likely due to a single LabVIEW project file containing multiple targets for different platforms (eg Windows and Real-Time), and VIs being explicitly or implicitly shared between those targets. LabVIEW then seems to run into conflicts as to which platform those VIs should be compiled for and might end up compiling for the wrong platform (VIs compiled for Windows will not run on Real-Time target). This could also be related to the "Separate compiled code from source" and LabVIEW mixing up different compiled object caches. === Solution === * Stick to our [[kb:bestpractices:codingconventions:style#labview_projects|Best Practices for LV Project files]] === References === //Courtesy of #LabVIEWfriend Petru Tarabuta// * NI Forums: [[https://forums.ni.com/t5/LabVIEW/Deploying-to-cRIO-is-effectively-impossible/m-p/4341751|Deploying to cRIO is effectively impossible]] * NI Forums: [[https://forums.ni.com/t5/LabVIEW/What-is-the-root-cause-of-quot-loaded-with-errors-on-the-target/m-p/4415160|What is the root cause of "...loaded with errors on the target"]] ---- ===== Front Panels Popping Up ===== //i.e. running VIs on the target from within the IDE and seeing front panels of VIs being opened on the host (Windows) computer// ==== DURING Deployment ==== LabVIEW bug no. 1876112 describes a behaviour where during deployment to RT targets, LabVIEW will open the front panel of any VI containing an event structure. The reason for this behaviour is a LV-internal warning ("VI containing Event Structure will not receive front panel events in LabVIEW Real-Time"), which is not actually displayed or anyhow visible to the user. Specifically, this bug has been found, documented, investigated and resolved by working with a DQMH module. It also turned out that the behaviour would show if the module .lvlib was added to the project, and would not show if the .lvlib was removed from the project and only showed up in Dependencies. This bug was fixed in LabVIEW 2022. ==== AFTER Deployment ==== //After deployment == when running the code// For targets without UI (all Vxworks and Phar Lap targets and NI Linux RT with [[kb:ni-rt:linuxrt:embedded_ui|Embedded UI]] disabled), this might be related to executing VIs that contain front panel related nodes. These nodes will throw error 53 (Manager Call not supported) when being executed, and will trigger the IDE to open the front panel of the containing VI.