Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

NI-VISA and openSUSE Leap 42.1

Hi everyone,

 

I'm trying to use NI-VISA on openSUSE Leap 42.1 (it says here that Leap 42.1 is supported) but whenever I try to run ./INSTALL the following error comes up:

 

ERROR: Kernel source does not appear to be installed for the 4.1.12-1-default kernel. Installation of the kernel-source package for kernel 4.1.12-1-default is required to continue this installation.

 

I have installed the kernel source for kernel 4.1.12-1 through YaST and restarted.

 

The weird thing is that I can continue with the installation and everything seems to work fine (no errors). However, then when I try to use pyvisa I get an error saying:

 

libnipalu.so failed to initialize

Perhaps you need to run updateNIDrivers

 

and running updateNIDrivers gives me:

 

ERROR: Error locating kernel sources for the requested kernel version (4.1.12-1-default).

 

which brings me back to the original problem. Any thoughts on this would be appreciated, thank you!

 

Michael

0 Kudos
Message 1 of 5
(5,166 Views)

Quick update: I've tried changing the kernel and installing the kernel-source again (I'm now using 4.1.36-41.1 and the source files are present at /lib/modules). I get the same error message about not being able to locate the kernel sources just with the kernel version updated. One thing I forgot in the first post is that this error is associated with nikal:

 

nikal: ERROR: Error locating kernel sources for the requested kernel version (4.1.36-41-default).

 

Hope someone knows what's going on...I'm about ready to abandon openSUSE and switch to Scientific Linux or something like that...

 

Michael

0 Kudos
Message 2 of 5
(5,111 Views)

Hi,

 

Thanks for linking the related article. Below the support chart: "Note: As of July 1, 2016, National Instruments no longer supports Intel 32-bit versions of Linux distributions. Versions of products that ship after July 1, 2016 may install and run on Intel 32-bit distributions, but official support is not provided." I do want to verify that you are on a 64-bit system.

 

We've seen in the case of DAQmx Base that the installation of specific 32-bit packages may be necessary.

 

Why Am I Unable to Build My DAQmx Base C Application on 64-bit RedHat or CentOS?

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000PASQSA4&l=en-US

 

I also want to verify that you have the NI-KAL Driver installed. For OpenSuse 42.1, you will need NI-KAL 15.1. The article below has not been updated to account for version 15.1, however, it may provide complimentary information about NI-KAL.

 

What Is the Linux NI-KAL Driver and Which Version Do I Need

https://www.ni.com/en/support/documentation/compatibility/17/ni-kal-driver-compatibility.html

 

For reference, the NI-VISA 16.0 For Linux readme is attached.

https://download.ni.com/support/softlib/visa/NI-VISA/16.0/Linux/README.txt

 

Regards,

 

Finch Train

0 Kudos
Message 3 of 5
(5,099 Views)

Hi Finch Train,

 

Thanks for the reply! Since I last posted I was able to fix the problem with the kernel sources by following these instructions from the README:

 

Q2: During installation I get a message similar to the following one:
    "Kernel source does not appear to be configured for the running kernel.
     Configuration of kernel source is required to continue installation."
    I do have kernel sources installed; is there anything else that needs to
    be done?

A2: This problem has been seen on SUSE LINUX Professional 9.1 Running the 2.6.5
kernel or newer versions of SUSE LINUX Professional. However, it is possible 
that other distributions will require similar steps to resolve this problem. 

	On SUSE LINUX Professional complete the following steps:
    1. Ensure you have installed kernel-source and kernel-syms packages
       corresponding to the version of the currently running kernel. The
       version of the currently running kernel can be determined by 
       issuing the command `uname -r`.
    2. Change the directory to the /usr/src/linux-<version> directory, where
       <version> corresponds to the currently running kernel version.
    3. Run "zcat /boot/symvers-<version>.gz > Module.symvers" as root to prepare
       modversion support.
    4. Run "make cloneconfig" as root to configure the sources for the
       currently running kernel.
    5. Run "make modules_prepare" as root to prepare the headers for
       compilation.
    6. THIS STEP IS STRICTLY OPTIONAL. Completing this step removes the
       warning:
       WARNING: Symbol version dump /usr/src/linux/Module.symvers is missing,
                modules will have CONFIG_MODVERSIONS disabled.
       Run "make modules" as root to compile all modules and generate
       Module.symvers; this step may take 30 minutes or more to complete.
    7. Run the INSTALL script for the NI-VISA software for Linux from this
       directory

After this, updateNIDrivers appears to work. However I still get this error when I try to connect to the device:

 

libnipalu.so failed to initialize

Perhaps you need to run updateNIDrivers

 

I am running a 64-bit system. I tried to install NI-KAL 15.0.1 (is this the version you meant? I couldn't find 15.1) and it said that the same or newer version was already installed.

 

I also went through and installed all the 32-bit components mentioned in your first link. Then I tried the install again and followed it with an updateNIDrivers. Both processes worked fine, but still get the same libnipalu.so error. Going off something I read here I tried running '/etc/init.d/nipal start' which returned the following error:

 

modprobe: ERROR: could not insert 'nipalk': Exec format error
 
error: nipalk failed to load
possible causes:
   nipalk was not versioned for this kernel (4.1.36-41-default)
   modules are not enabled for this kernel (CONFIG_MODULES)
   unresolved symbols
possible solution:
   if you recently installed a new kernel or have rebooted to
   a different kernel from one you were previously running then run
   /usr/local/bin/updateNIDrivers
   to version your NI drivers for kernel 4.1.36-41-default

 

but I already ran updateNIDrivers just before this.

 

Michael

0 Kudos
Message 4 of 5
(5,091 Views)

Hi Michael,

 

I've done some research and found two workarounds. From what I have seen I would recommend the second method.

 

  1. Try running the postinstall script.  Either append the following to your instructions:

 

cd /usr/local/natinst/nipal/bin

. ni_pal_nikalmodInstallerUtility.sh

ni_pal_nikalmodPostInstall

 

  1. (From what I have seen I would suggest this)

 

Install paldist from //sa/ss/installers/paldist/export/15.1/15.1.0b2/.archives/linux.zip.  That will install ni-pal-errors, ni-pal, ni-pal-nikalmod and any appropriate transitional packages and run postinstall scripts as needed.

 

Aside from this I have also seen cases where a switch to Scientific Linux was the quickest work around. Keep me posted on your progress.

 

Regards,

 

Finch Train

0 Kudos
Message 5 of 5
(5,056 Views)