Missing External Function or Resource Not Found When Compiling EXE or Installer in LabVIEW

Updated May 28, 2026

Reported In

Software

  • LabVIEW
  • LabVIEW Application Builder Module

Issue Details

I'm trying to build an executable and an installer for deployment in one of our facilities, but when I build all the specifications and then go to the target computer I received one or more of the following errors:

"Missing external function"

"Resource not found". 

 

This code builds and runs correctly in LabVIEW 2015. However, when I attempt to build the same project in LabVIEW 2017 or LabVIEW 2018, the errors intermittently occur. I have confirmed that the same bitness (32-bit or 64-bit) is used across all LabVIEW versions and systems involved.

Solution

These errors typically occur due to differences in how dependencies are compiled or deployed across LabVIEW versions or systems. Complete the following steps to resolve the issue. After each step, rebuild the executable and verify whether the issue is resolved.

  1. Mass compile all project files in the current LabVIEW version
    When switching between LabVIEW versions, compiled object code can become incompatible and cause linking errors when building executables.

    • Open the project in the target LabVIEW version.
    • Select Tools >> Advanced >> Mass Compile.
    • Mass compile all VIs used by the project before rebuilding the executable.
  2. Build the executable into an installer
    This issue can also occur if required dependencies are not present on the target machine.

    • Create an installer that includes the executable.
    • In the installer build specification, add all required dependencies, including:
      • LabVIEW Run-Time Engine (matching version and bitness)
      • Required drivers
      • Any additional shared libraries or third-party components

    Including dependencies in the installer ensures that all required resources are available on the target system at runtime.

For guidance on building installers, refer to Create an Installer of NI Products and Drivers With Third-Party Executables.

Additional Information

By default, the LabVIEW Application Builder does not always explicitly include dynamically linked dependencies if it detects that those resources already exist on the build system. This behavior is intended to reduce build size and build time, but it can result in missing dependencies when the executable is deployed to a different machine.