The NI FPGA Compile Worker processes FPGA compile tasks distributed by a NI FPGA Compile Server and provides the link between LabVIEW code and a bitfile to configure the FPGA during application deployment. The NI FPGA compilation tool chain is based on either the Xilinx Vivado or ISE FPGA toolkits. On Linux, the NI FPGA Compile Worker is executed by the mono .NET runtime environment. As of now, the Compile Worker is not automatically started when the system is booted.This article will describe how to setup a systemd service to launch the NI FPGA Compile Worker unattendedly at system startup. While the example covers CentOS 7.8, the same procedure should apply to other supported Linux distributions that are based on the systemd init system.
Next, setup the Compile Worker caller script and systemd service as described below. The files mentioned in the how-to are given below. Ensure that you have root privileges when following the procedure.
Should be placed as /usr/local/natinst/nifpgacompileworker/start_nifpgacompileworker.sh
# This line is a workaround for Mono 4.0.4. Mono 4.2.1 has fixed the issue. See CAR #550029.
# set screen to virtual framebuffer
# no worries, this will only apply to the contents of the shell file
if which Xvfb
Xvfb :1 -screen 0 1024x768x16 &
Should be created as /etc/systemd/system/nifpgaworker.service
Description=NI FPGA Compile Worker Wrapper
Compile Worker Troubleshooting:
Collaborate with other users in our discussion forums
A valid service agreement may be required, and support options vary by country.