Running LabVIEW Built Executables Between Windows, macOS, and Linux OS

Updated Feb 23, 2018

Reported In

Software

  • LabVIEW Application Builder Module
  • LabVIEW

Operating System

  • Windows
  • Linux
  • Mac OS X

Issue Details

Can a stand-alone application (executable) built with Application Builder in Windows, Macintosh, or Linux be transferred and used interchangeably on another platform?

Solution

No, Application Builder is platform dependent. Applications are compiled for a specific environment and are not platform independent. An application built for Windows PC (.exe) will not transfer to a Macintosh or Linux system because built applications are operating system specific.

Stand-alone applications built on one version of an operating system platform are also not guaranteed to perform the same when run on another version of the same operating system.  You can read more about this in Running LabVIEW Executable or Installer on Different Windows Version

However, Virtual Instruments (.vi files) developed on the Windows platform or Macintosh platform will transfer to the other without problem as long as LabVIEW development environment and all libraries/modules/tool kits/drivers are available and installed on both platforms. LabVIEW Files (.vi files and .llb files) are platform independent.  LabVIEW for Windows will not install on a Macintosh or Linux computer and vice versa.

Additional Information

Virtual Machines (VM)

Built applications can also run on virtual machines running the same operating system used to build the application. This option generally works for projects that do not involve hardware unless your virtual machine is specifically configured to interface with your hardware. Virtual Machines are also not officially supported by National Instruments.
 

Platform Dependent Features

Platform dependent features like ActiveX and dynamic link libraries (.dll files) will not transfer between platforms. Features such as Active X and DLLs are only available on the Windows platform. Apple Events are only available on the Macintosh platform. If VIs use platform dependent features, modification is required when they are transferred from one platform to another. If Code Interface Nodes (CINs) are used in the VI then it is necessary to recompile the CIN code when transferring between platforms.
 

DLL vs SO

DLL files in Macintosh and Linux machines are referred to as Shared Object or .so files.

WAS THIS ARTICLE HELPFUL?

Not Helpful