Editing Instrument control package

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 78: Line 78:
# Prerequisits are that during install of the NI drivers, the C/C++ support  
# Prerequisits are that during install of the NI drivers, the C/C++ support  
# and the NI Measurement & Automation explorer has been enabled.
# and the NI Measurement & Automation explorer has been enabled.
# set the base for includes and libraries on your system
# it is usually /usr, but on newer windows installs of octave, it will be
# /mingw64
INSTALL_BASE=/usr


# this define should find the NI header file, if properly installled
# this define should find the NI header file, if properly installled
Line 91: Line 86:


# symlink NI header file
# symlink NI header file
mkdir -p ${INSTALL_BASE}/include/gpib/
mkdir -p /usr/include/gpib/
ln -sf "${NI_H_FILE}" ${INSTALL_BASE}/include/gpib/ib.h
ln -sf "${NI_H_FILE}" /usr/include/gpib/ib.h


# generate .def for all functions in the NI header file with a NI488CC prefix
# generate .def for all functions in the NI header file with a NI488CC prefix
echo LIBRARY ${NI_DLL_FILE} > ${NI_DEF_FILE}
echo LIBRARY ${NI_DLL_FILE} > ${NI_DEF_FILE}
echo EXPORTS >> ${NI_DEF_FILE}
echo EXPORTS >> ${NI_DEF_FILE}
grep "NI488CC  *[A-Za-z]" ${INSTALL_BASE}/include/gpib/ib.h \
grep "NI488CC  *[A-Za-z]" /usr/include/gpib/ib.h \
   | sed "s/^.*NI488CC  *//" \
   | sed "s/^.*NI488CC  *//" \
   | sed "s/(.*$//" >> ${NI_DEF_FILE}
   | sed "s/(.*$//" >> ${NI_DEF_FILE}


# generate the wrapper library simulating gpib-linux
# generate the wrapper library simulating gpib-linux
dlltool -d ${NI_DEF_FILE} -l ${INSTALL_BASE}/lib/libgpib.a
dlltool -d ${NI_DEF_FILE} -l /usr/lib/libgpib.a


#cleanup  
#cleanup  
Line 110: Line 105:
== MacOS ==
== MacOS ==


You need to build '''rpcgen''' from source [http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD-current/src/usr.bin/rpcgen].
You need to build rpcgen from source [http://mirror.ancl.hawaii.edu/pub/FreeBSD/FreeBSD-current/src/usr.bin/rpcgen].
 
If rpcgen cannot be build from source, the following error might be obtained:
<syntaxhighlight lang="text"  style="font-size:13px">
pkg: error running `make' for the instrument-control package.
error: called from
    configure_make at line 99 column 9
    install at line 184 column 7
    pkg at line 437 column 9
</syntaxhighlight>
 
If the '''VXI-11 interface''' is not required, a workarround is proposed in [https://stackoverflow.com/questions/46720092/make-error-when-installing-instrument-control-package-for-octave/52860282#52860282] after the bug reported on [https://savannah.gnu.org/bugs/?54842].


= Examples =
= Examples =
Please note that all contributions to Octave may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Octave:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)

Template used on this page: