libnipalu.so Failed to Initialize When Using "nidaqmxconfig" Command on Desktop Linux

Updated Feb 19, 2024

Reported In

Driver

  • NI-DAQmx

Operating System

  • Linux

Issue Details

If I use DAQmx configuration command such as nidaqmxconfig on my Linux PC, I got an error:
[root@host usename] nidaqmxconfig
libnipalu.so failed to initialize
Verify that nipalk.ko is built and loaded.
Aborted (core dumped)

How do I fix this?

Solution

This error indicates that one of the main NI hardware services on Linux, NIPAL is not running because its kernel module (similar to the .sys driver files on Windows) failed to load.
You can check this with the following expression:

sudo lsmod | grep nipalk

If the result is empty, the module is not loaded.

If the NI Linux Desktop drivers were installed properly, this can be caused by a kernel update of the Linux distribution in use. Aside from reinstalling the drivers, a quick fix can often be achieved by recompiling the kernel
modules using the dkms (Dynamic Kernel Module Support) tool.

Preparation:

First, make sure your distribution and its packages are up to date. The procedure is similar across distros except for the different package managers used.

Red Hat Enterprise Linux (RHEL):

sudo yum update && sudo yum upgrade

openSUSE:

sudo zypper refresh && sudo zypper update

Ubuntu:

sudo apt-get update && sudo apt-get upgrade


A reboot might be necessary to switch to an eventually updated kernel.

Recompilation

Now, recompile and reload the kernel modules via

sudo dkms autoinstall

Reboot the machine.
 

Verification

Make sure the nipal service is now running:
sudo systemctl status nipal.service
You should see something similar to


nidaqmxconfig, lsni and other ni-related commands as well as C API driver calls should work now.

If not, attempt to start it manually via
sudo systemctl restart nipal.service

 

If that fails as well, check the compilation log via

cat /var/lib/dkms/nipalk/kernel-`uname -r`-`uname -m`/log/make.log

 

Otherwise, recheck that your distribution and the kernel version in use is supported by the NI Linux Desktop driver version installed.