LabVIEW: Failed to Load Shared Library on RT Target

Updated May 3, 2018

Reported In

Hardware

  • CompactRIO Controller
  • PXI Controller

Software

  • LabVIEW Full
  • LabVIEW Professional
  • LabVIEW Real-Time Module

Operating System

  • VxWorks
  • PharLap
  • NI Linux Real-Time

Issue Details

I receive the below error or a similar error when I try to run or deploy a VI onto my real-time target, such as a cRIO or RT PXI:

LabVIEW: Failed to load shared library lvanlys.*:MedianFilter81_H:C. Ensure that the library is present on the RT target. Use either MAX to install NI software or FTP to transfer custom libraries to the RT target. 
Deployment completed with errors


The VI I am attempting to run does not contain any VIs that are part of an additional toolkit, module, or add-on.  I am just using the VIs that are available with LabVIEW Real-Time Module.

Solution

Below are troubleshooting steps for the LabVIEW: Failed to load shared library error that you see during VI deployment:
  1. If you only see this issue when you move between versions of LabVIEW, delete the VI that is called out in the error and replace it with the same VI from the LabVIEW VI palette. 
  2. Create and run a VI that only uses the VI called out in the error message.
  3. Create and run a VI that only uses another VI in the same library called out in the error message.
  4. Restart the RT controller (cRIO or PXI controller) and development PC.
  5. Format the RT target and reinstall software.  Install the minimal set of software you need.
  6. Test on another computer with same software and driver set. 
  7. If your RT controller is Pharlap or VxWorks, you can check to see if library is deployed to the target. The library should be located at ni-rt/system/library_name.out for VxWorks controllers and ni-rt/system/library_name.dll for Pharlap controllers.  We can get there by right-clicking on the RT target in NI MAX and selecting File Transfer, which should open up a Windows File Explorer window. If the library is not there, it points to a likely issue during software installation to the RT controller or an issue with the LabVIEW installation on the computer. 
Here are additional troubleshooting steps if you are using a custom library or additional toolkit,  and items to look at if your error message refers to a dll.

Additional Information

Notes on troubleshooting steps:
  1. Changes in LabVIEW versions can cause changes in VIs and their location on disk.  Re-dropping VIs from the palette can fix is issue.
  2. There could be other VIs that are causing the root problem.  Narrowing down your VI to a specific VI will help to ensure that a given VI is the one causing the problem.
  3. Testing another VI of the same library will help to determine if the issue is tied to a specific VI or to the library.
  4. RT controllers generally have more limited memory than your PC.  If there is not enough memory on the RT controller, the library that is required for your VI may not be able to load and can cause this error.  Although your PC will generally have more memory than an RT controller, it can still run into memory corruptions or bad states.  Restarting your PC can help to clear up bad instances of a LabVIEW VI or project.

WAS THIS ARTICLE HELPFUL?

Not Helpful