LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

cRIO build error

Hi,

 

I'm having some trouble, compiling a LabVIEW 2012 project for a cRIO 9074. I did some changes in an existing project which seemed rather minor to me, and since tuesday I only get a compiler error when I try to build it for the target. If I just open and run the VI, I get no error message and it runs without problems/warnings.

 

This is the message I get:

Cannot complete build because following VI loaded broken:

C:\NI\LV2012\PCB2\Code\Main.vi

Open the VI in LabVIEW and fix the listed errors. If the VI loads as expected but errors are still detected during the build, contact National Instruments technical support for assistance.

- Details Display Dialog.vi:
    Function not supported for current target
- Main.vi:
    LabVIEW needs more memory to compile VI.
- Not Found Dialog.vi:
    Function not supported for current target Sub VI not supported in current target

 

Details:

Visit the Request Support page at ni.com/ask to learn more about resolving this problem. Use the following information as a reference:

Error 1003 occurred at AB_Get_Detailed_BrokenVI_Message.vi -> AB_Targetfile.lvclass:Open_Top_Level_VIs.vi -> AB_Build.lvclass:Build.vi -> AB_Application.lvclass:Build.vi -> AB_RTEXE.lvclass:Build.vi -> AB_Engine_Build.vi -> AB_Build_Invoke.vi -> AB_Build_Invoke.vi.ProxyCaller

Possible reason(s):

LabVIEW:  The VI is not executable. Most likely the VI is broken or one of its subVIs cannot be located. Select File>>Open to open the VI and then verify that you are able to run it.

 

Sometimes, the compile and deployment finished without errors, but if I tried to open the remote panel, It said, it was broken and could not be opened. Sometimes, LabView crashed during compile as well.

 

I tried:

- Disabling suspicious code like the new global variable I introduced

- Going back to a previous version of my project

- Changing compiler optimization so that no optimization will occur (set from 5 to 😎

- Reinstalling cRIO software ni-RIO 12.0

- Cleared compiled object cache

 

I'm afraid there's something wrong with the LabView installation. Or is it the OS itself? Or is there a reason to believe that more RAM will help (I currently have 4GB). This post makes me believe the opposite.

What can I do to check the installation? I don't want to reinstall unless it's sure it helps.

 

Best regards,

Simo

0 Kudos
Message 1 of 11
(5,968 Views)

The error message seems to be saying that you are using dialogues in your code - if you have a compiled RT executable (unless it's running on a target with a display) you can't have any pop-up dialogues as it runs without a user interface. This is true for remote front panels - they can only have a single window and cannot display pop-up windows.

 

Have you checked your code for any dialogues and removed them (or put conditional disables around them)?


LabVIEW Champion, CLA, CLED, CTD
(blog)
Message 2 of 11
(5,963 Views)

I am not trying to use any dialogues in my code. The Not Found Dialog.vi is called only from ni libraries. Also, in debug mode it's running.

 

Messages about Not Found Dialog.vi came up earlier as well. I remember this vi popping up sometimes with a broken arrow, but usually I could just close my main vi, reopen it and the error was gone, compilation no problem.

0 Kudos
Message 3 of 11
(5,951 Views)

Have you tried forcing a recompile on the VI hierarchy (ctrl+shift+click run)?

 

If that doesn't work, I would try copying+pasting the code into a new VI. Very occasionally something can get corrupted in the VI which can these cause sorts of intermittent build issues.


LabVIEW Champion, CLA, CLED, CTD
(blog)
0 Kudos
Message 4 of 11
(5,942 Views)

Hi SKauth,

 

I agree with Sam_Sharp, maybe a forced recompile will fix your problem. In case you haven't searched for it, there are others ways to fix the error 1003 that appears in the details. You can find the different troubleshooting steps in this document:

 

Error 1003 Occurs when trying to create an Executable

>>http://digital.ni.com/public.nsf/allkb/705C2ECA081F3C7986256C0F00559B02

 

I hope this will help you.

 

Regards.

0 Kudos
Message 5 of 11
(5,907 Views)

I still didn't have success. This is what I tried:

  • Forced recompile. Is this actually compiling the code to be deployed on the target or just for running it in the IDE?
  • Copy-pasting the main VI turned up some hidden controls I already forgot about but still it's giving the exact same error.
  • Removed parts of the code to isolate the problem.
  • Mass compile gives lot of errors, but just from files which are experimental and will not be deployed to the target as I can see now
  • Enabled debugging in build specs.

 

I'm trying to follow some hints here:

"Error 1003 occurs when..."

 

But it seems that a lot of manual tasks are necessary. Any Idea how to find e.g. a library file in the dependencies having the same name as a file I added? Or any other hint how to isolate the problem?

0 Kudos
Message 6 of 11
(5,866 Views)

Hello SKauth

 

In my project I do get 2 of your errors listed 

 

- Details Display Dialog.vi:
    Function not supported for current target


- Not Found Dialog.vi:
    Function not supported for current target Sub VI not supported in current target

 

However I get them as warnings and there are no instances of those specific vis being used unless they are related to some vi in the vi hierarchy 

 

Error 1003 occurred at AB_Get_Detailed_BrokenVI_Message.vi -> AB_Targetfile.lvclasspen_Top_Level_VIs.vi -> AB_Build.lvclass:Build.vi -> AB_Application.lvclass:Build.vi -> AB_RTEXE.lvclass:Build.vi -> AB_Engine_Build.vi -> AB_Build_Invoke.vi -> AB_Build_Invoke.vi.ProxyCaller

Possible reason(s):

LabVIEW:  The VI is not executable. Most likely the VI is broken or one of its subVIs cannot be located. Select File>>Open to open the VI and then verify that you are able to run it.


As for this error I understand that this happened during the compilation of the rt application build specification

 

Mine was 1502 during compilation with error 7 , I just did this

 

"It sounds like there may be a corruption in the compiled code that is being
saved for certain VIs in your project.  The first thing I would try in this
situation is to clear the compiled object cache, and perform a forced recompile
on the top level VI of the EXE:

 

Clear Compiled Object Cache Dialog Box

 

http://zone.ni.com/reference/en-XX/help/371361H-01/lvdialog/clear_object_cache_d
b/

 

*Make sure you are clearing both the user and Application Builder caches.

 

Forcing a VI to Recompile

 

http://digital.ni.com/public.nsf/allkb/C1C6FE6231966E278625661F0054A970

 

*You will want to perform the forced recompile on the top level, and use the
"entire hierarchy" option with <Ctrl> + <Shift> + Run Button.

 

After performing these steps, attempt to build again and see what happens.  If
you continue to get errors, let me know what they are and we can go from there!" - NI Tech Support guy who helped me

 

regards mzamanstl 

0 Kudos
Message 7 of 11
(5,849 Views)

I actually found a typedef I recently connected to a shared variable. And at first sight compile was successful, and the program ran on the target when I deleted it. But I already disabled large chunks of code before for testing purposes which I do need for my project. So I reverted to a previous version and tried to remove only this variable. And there was the error again. Unfortunately I did not commit my working copy after that one successful compile before reverting. Looks like I have to go the same way again. This is awfully tedious...

 

Or is it actually a memory problem as the compiler says? So far I couldn't manage to get an additional RAM module.

 

I'm also thinking about converting to LV 2013, but besides the long installation procedure, I'm afraid of compatibility issues...

0 Kudos
Message 8 of 11
(5,817 Views)

Converted my project to LV 2013, but still there is the memory message.

0 Kudos
Message 9 of 11
(5,758 Views)

I had some progress. I'm just writing down what I think helped in finding a solution:

  • Switched back to LV 2012
  • Exported only those files from the project which are actually required for the main VI of the application by setting up a code distribution and a new project file.
    This way i am hoping to get rid of possibly broken references. Also I could mass compile my whole project now which was not possible before due to nonoperational outdated and experimental files.
  • Closed Firefox and Outlook
  • Cleared compiler cache

> Compilation and deployment was possible.

 

If I open Firefox and Outlook and then try to compile, it fails. Once it failed I need to close LV and reopen it again. When closing, I got a message about internal warnings. After reopening, I close ohter programs, clear compiler cache and it works.

 

Now I again opened the cleaned project with LV 2013. It seems the behaviour is similar, but the warning when closing LV is different.

 

Compiler optimization is still at level 8.

 

Still waiting for a RAM update from 4 to 8 GB from the IT department, but that warning shouldn't come anyway, should it?

 

0 Kudos
Message 10 of 11
(5,681 Views)