From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
04-18-2014 01:32 PM
I think my issue boils down to 32/64 bit issues:
I'm a long-time Linux user (about 90% GUI-level only, though), but am completely new to instrumentation control. I am running Scientific Linux 6.5 (64 bit) in VirtualBox 4.3.10 on a Windows 7 (64 bit) machine. I first read at this link
http://digital.ni.com/public.nsf/allkb/4857A755082E9E228625778900709661
that NI VISA 5.4 (for Linux) did support 64-bit, but later read in the README that only 32 bit was supported. I thought I'd trym though, since I had read online that some people were getting things going on a 64-bit system (the link below is more about pyvisa, but the person used an NI VISA driver, so...):
http://comments.gmane.org/gmane.comp.python.pyvisa.devel/59
Anyway, I followed the instruction in the NI-VISA-5.4.0.iso README and everything seemed to install. When I ran "NIvisaic" from the command line (as root), I got:
[root@localhost bin]# NIvisaic
bash: /usr/local/bin/NIvisaic: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
I found this was a "32-bit application on a 64-bit computer" issue. (http://stackoverflow.com/questions/14030306/lib-ld-linux-so-2-bad-elf-interpreter-no-such-file-or-di...). The link seems to indicate I need to install ld-linux.so.2, so I checked yum: "yum whatprovides ld-linux.so.2" and got (among other hits):
glibc-2.12-1.132.el6.i686 : The GNU libc libraries
Repo : installed
Matched from:
Other : Provides-match: ld-linux.so.2
which seems to indicate it's installed.
Anyway, I then ran "updateNIDrivers" and that seemed to go okay, but running "NIvisaic" again produced the same error.
My next step is to get Scientific Linux in 32-bit as mentioned in another post, but wondered if perhaps this one issue could easily be resolved meaning I won't have to reinstall/update/tweak a new OS. I also read somewhere that useing "-m32" when building an application would work, and wondered if anyone knew how to apply that to the situation above. Finally, I read a 64-bit Linux driver might be available in Fall 2014, and since market size is the key motivator, I'd like to let NI know there's at least one more person hearitly encourging its development!
So that's my issue; you can stop reading if you'd like, but for more background: I'm an EE intern and am trying, as a proof of concept, to communicate and control an NI USB-5132 Digitizer using Linux. I don't have funding, but need to log data, so my intent was to use PyVISA (or maybe Python IVI, which I just discovered, but know nothing about) to do this. Unfortunately, I need 32-bit Python for the NI VISA driver, and getting 32-bit Python on Linux is way harder than I guessed it would be. I am using the book "Real World Instrumentation with Python" by J.M. Hughes as a guide (but he uses Python 2.6 and I'd like to "convert" it to 3.x, but getting either in 32-bits is, like I mentioned, seemingly impossible (for my skill level, anyway)). Any help would be great!
04-18-2014 01:53 PM
Make sure the following packages are installed. This is a list I pulled off of a Scientific Linux 6.5 64-bit machine that runs LabVIEW (what visaic is built from). Pretty sure not all of them are required, but this should get you going quickly.
libselinux-2.0.94-5.3.el6_4.1.i686
mesa-libGL-9.2-0.5.el6.i686
libXfixes-5.0-3.el6.i686
libdrm-2.4.45-2.el6.i686
expat-2.0.1-11.el6_2.i686
ncurses-libs-5.7-3.20090208.el6.i686
elfutils-libelf-0.152-1.el6.i686
libXext-1.3.1-2.el6.i686
zlib-1.2.3-29.el6.i686
libgcc-4.4.7-4.el6.i686
libstdc++-4.4.7-4.el6.i686
glibc-devel-2.12-1.132.el6.i686
libXinerama-1.1.2-2.el6.i686
mesa-private-llvm-3.3-0.3.rc3.el6.i686
libxcb-1.8.1-1.el6.i686
popt-1.13-7.el6.i686
nss-softokn-freebl-3.14.3-9.el6.i686
mesa-dri-filesystem-9.2-0.5.el6.i686
mesa-dri-drivers-9.2-0.5.el6.i686
libXxf86vm-1.1.2-2.el6.i686
glibc-2.12-1.132.el6.i686
libXau-1.0.6-4.el6.i686
libpciaccess-0.13.1-2.el6.i686
libXdamage-1.1.3-4.el6.i686
compat-libstdc++-296-2.96-144.el6.i686
libX11-1.5.0-4.el6.i686
compat-glibc-headers-2.5-46.2.x86_64
lpg-java-compat-1.1.0-4.1.el6.noarch
rarian-compat-0.8.1-5.1.el6.x86_64
compat-opensm-libs-3.3.5-3.el6.x86_64
redhat-lsb-compat-4.0-7.el6.x86_64
libreport-compat-2.0.9-19.el6.x86_64
compat-openmpi-psm-1.4.3-1.1.el6.x86_64
compat-gcc-34-3.4.6-19.el6.x86_64
geronimo-specs-compat-1.0-3.5.M2.el6.noarch
compat-db42-4.2.52-15.el6.x86_64
compat-expat1-1.95.8-8.el6.x86_64
compat-openmpi-1.4.3-1.1.el6.x86_64
compat-db43-4.3.29-15.el6.x86_64
compat-libcap1-1.10-1.x86_64
compat-gcc-34-c++-3.4.6-19.el6.x86_64
compat-glibc-2.5-46.2.x86_64
compat-openldap-2.3.43-2.el6.x86_64
compat-libstdc++-33-3.2.3-69.el6.x86_64
compat-db-4.6.21-15.el6.x86_64
compat-libf2c-34-3.4.6-19.el6.x86_64
compat-readline5-5.2-17.1.el6.x86_64
xz-lzma-compat-4.999.9-0.3.beta.20091007git.el6.x86_64
compat-libtermcap-2.0.8-49.el6.x86_64
compat-libgfortran-41-4.1.2-39.el6.x86_64
10-01-2015 06:51 AM
Posting for posterity: There's a shorter list in the knowledge base (KB 600GI5ES), which refers to Red Hat 64 bit, which of course means it also applies to Scientific Linux (and CentOS, possibly).