gcl8a
gcl8a

Reputation: 41

make error when installing instrument-control package for octave

I'm running Octave 4.0.3 on OSX 10.10.5. When I try to install the instrument-control package using:

>> pkg install -forge instrument-control -verbose

I get the following error:

clang: warning: argument unused during compilation: '-pthread'
rm __gpib_trigger__.o gpib_write.o gpib_read.o __gpib_spoll__.o gpib.o __gpib_clrdevice__.o gpib_timeout.o gpib_close.o

pkg: error running `make' for the instrument-control package.
error: called from 'configure_make' in file /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/share/octave/4.0.3/m/pkg/private/configure_make.m near line 96, column 9

There are a pile of warnings during the build, but they're all for ignored options during compile.

I have successfully installed other packages (control, signal). Could this be a compatibility issue? Ultimately, I need to communicate to a serial device using octave.

Updates:

A student tried the same using Octave 3.8.0 and I tried it with 4.2.0 with the same results.

I tried with -verbose and there doesn't seem to be any more information. There are a bunch of warnings for unused options, but nothing in the (pages of) output that indicate any hints. At the top, I get:

>> pkg install -forge instrument-control -verbose
mkdir (/var/tmp/oct-hJRcYn)
untar (/Users/greg/instrument-control-0.3.0.tar.gz, /var/tmp/oct-hJRcYn)
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking for mkoctfile... /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose
checking for grep that handles long lines and -e... /usr/bin/grep
checking whether install_signal_handlers is in the octave namespace... no
checking whether set_signal_handler is in the octave namespace... no
checking for windows... no
checking how to run the C++ preprocessor... clang++ -E
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking linux/i2c-dev.h usability... no
checking linux/i2c-dev.h presence... no
checking for linux/i2c-dev.h... no
checking dev/iicbus/iic.h usability... no
checking dev/iicbus/iic.h presence... no
checking for dev/iicbus/iic.h... no
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking linux/parport.h usability... no
checking linux/parport.h presence... no
checking for linux/parport.h... no
checking linux/ppdev.h usability... no
checking linux/ppdev.h presence... no
checking for linux/ppdev.h... no
checking dev/ppbus/ppi.h usability... no
checking dev/ppbus/ppi.h presence... no
checking for dev/ppbus/ppi.h... no
checking dev/ppbus/ppbconf.h usability... no
checking dev/ppbus/ppbconf.h presence... no
checking for dev/ppbus/ppbconf.h... no
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking winsock2.h usability... no
checking winsock2.h presence... no
checking for winsock2.h... no
checking for library containing getnameinfo... none required
checking gpib/ib.h usability... no
checking gpib/ib.h presence... no
checking for gpib/ib.h... no
checking for rpcgen... yes
checking for library containing clnt_create... none required
checking rpc/rpc.h usability... yes
checking rpc/rpc.h presence... yes
checking for rpc/rpc.h... yes
checking visa/visa.h usability... no
checking visa/visa.h presence... no
checking for visa/visa.h... no
configure: creating ./config.status
config.status: creating octave-wrappers.h
config.status: creating Makefile
config.status: creating gpib/Makefile
config.status: creating tcp/Makefile
config.status: creating udp/Makefile
config.status: creating vxi11/Makefile
config.status: creating usbtmc/Makefile
config.status: creating serial/Makefile
config.status: creating parallel/Makefile
config.status: creating i2c/Makefile
config.status: creating resolvehost/Makefile
config.status: creating config.h

which seems to indicate I have the tools I need. The relevant lines from configure_make are:

if (exist (fullfile (src, "Makefile"), "file"))
  [status, output] = shell (sprintf ("%s make --jobs %i --directory '%s'",
                                     scenv, jobs, src), verbose);
  if (status != 0)
    rmdir (desc.dir, "s");
    disp (output);
    error ("pkg: error running `make' for the %s package.", desc.name);
  endif
endif

Complete output of the command:

pkg install -forge instrument-control -verbose
mkdir (/var/tmp/oct-DzBx8a)
untar (/Users/greg/Dropbox/octave/instrument-control-0.3.0.tar.gz, /var/tmp/oct-DzBx8a)
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking for mkoctfile... /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose
checking for grep that handles long lines and -e... /usr/bin/grep
checking whether install_signal_handlers is in the octave namespace... no
checking whether set_signal_handler is in the octave namespace... no
checking for windows... no
checking how to run the C++ preprocessor... clang++ -E
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking linux/i2c-dev.h usability... no
checking linux/i2c-dev.h presence... no
checking for linux/i2c-dev.h... no
checking dev/iicbus/iic.h usability... no
checking dev/iicbus/iic.h presence... no
checking for dev/iicbus/iic.h... no
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking linux/parport.h usability... no
checking linux/parport.h presence... no
checking for linux/parport.h... no
checking linux/ppdev.h usability... no
checking linux/ppdev.h presence... no
checking for linux/ppdev.h... no
checking dev/ppbus/ppi.h usability... no
checking dev/ppbus/ppi.h presence... no
checking for dev/ppbus/ppi.h... no
checking dev/ppbus/ppbconf.h usability... no
checking dev/ppbus/ppbconf.h presence... no
checking for dev/ppbus/ppbconf.h... no
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking winsock2.h usability... no
checking winsock2.h presence... no
checking for winsock2.h... no
checking for library containing getnameinfo... none required
checking gpib/ib.h usability... no
checking gpib/ib.h presence... no
checking for gpib/ib.h... no
checking for rpcgen... yes
checking for library containing clnt_create... none required
checking rpc/rpc.h usability... yes
checking rpc/rpc.h presence... yes
checking for rpc/rpc.h... yes
checking visa/visa.h usability... no
checking visa/visa.h presence... no
checking for visa/visa.h... no
configure: creating ./config.status
config.status: creating octave-wrappers.h
config.status: creating Makefile
config.status: creating gpib/Makefile
config.status: creating tcp/Makefile
config.status: creating udp/Makefile
config.status: creating vxi11/Makefile
config.status: creating usbtmc/Makefile
config.status: creating serial/Makefile
config.status: creating parallel/Makefile
config.status: creating i2c/Makefile
config.status: creating resolvehost/Makefile
config.status: creating config.h
configure:

octave instrument control package is now configured with

   BUILD SERIAL:      yes
   BUILD PARALLEL:    no
   BUILD I2C:         no
   BUILD TCP:         yes
   BUILD UDP:         yes
   BUILD USBTMC:      no
   BUILD GPIB:        no
   BUILD VXI11:       yes
   BUILD RESOLVEHOST: yes

   GPIB LIBS:
   VXI11 LIBS:
   VXI11 INCLUDE:
   VISA LIBS:
   TCP LIBS:


/Applications/Xcode.app/Contents/Developer/usr/bin/make -C serial
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C parallel
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C i2c
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C usbtmc
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C tcp
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C udp
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C gpib
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C vxi11
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c serial_class_lin.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c parallel_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c i2c_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c usbtmc_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c gpib_class.cc
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c udp_class.cc
clang++ -c  -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis  -DHAVE_CONFIG_H parallel_class.cc -o parallel_class.o
rpcgen -M vxi11.x
clang++ -c  -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis  -DHAVE_CONFIG_H serial_class_lin.cc -o serial_class_lin.o
/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose -DHAVE_CONFIG_H -c tcp_class.cc
clang++ -c  -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis  -DHAVE_CONFIG_H udp_class.cc -o udp_class.o
clang++ -c  -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis  -DHAVE_CONFIG_H i2c_class.cc -o i2c_class.o
usage:  /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen infile
clang++ -c  -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis  -DHAVE_CONFIG_H usbtmc_class.cc -o usbtmc_class.o
clangclang      /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-a][-b][-C][-Dname[=value]] -i size  [-I [-K seconds]] [-A][-L][-M toolkit][-N][-T] infile
clangclang++ -c  -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/..-I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis    -DHAVE_CONFIG_H gpib_class.cc -o gpib_class.o
:       /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-c | -h | -l | -m | -t | -Sc | -Ss] [-o outfile] [infile]
clang++ -c  -fPIC -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis  -DHAVE_CONFIG_H tcp_class.cc -o tcp_class.o
:       /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-s nettype]* [-o outfile] [infile]
clangclangwarning       /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/rpcgen [-n netid]* [-o outfile] [infile]
: warning: : : : -lsuitesparseconfig: 'linker' input unusedwarning-lsuitesparseconfig: 'linker' input unusedwarningclangwarningoptions:

: : :
-A              generate svc_caller() function
: -lsuitesparseconfig: 'linker' input unused-a          generate all files, including samples
-lsuitesparseconfig: 'linker' input unused-b            backward compatibility mode (generates code for SunOS 4.1)
-lsuitesparseconfig: 'linker' input unusedwarning
-c              generate XDR routines
: clang-C               ANSI C mode

-Dname[=value]  define a symbol (same as #define)
: -lsuitesparseconfig: 'linker' input unused
warning-h               generate header file
:
-i size         size at which to start generating inline code
-lmetis: 'linker' input unused-I                generate code for inetd support in server (for SunOS 4.1)

-K seconds      server exits after K seconds of inactivity
-l              generate client side stubs
clang-L         server errors will be printed to syslog
: -m            generate server side stubs
warning-n netid generate server code that supports named netid
: clangclangclangclangclang: : warning: warning: warning: : -lmetis: 'linker' input unused-lmetis: 'linker' input unused
-lmetis: 'linker' input unused
:
: warning: warning: -lmetis: 'linker' input unused-lmetis: 'linker' input unused

-lsuitesparseconfig: 'linker' input unused
clang: warning: -lmetis: 'linker' input unused
-N              supports multiple arguments and call-by-value
-o outfile      name of the output file
-s nettype      generate server code that supports named nettype
-Sc             generate sample client code that uses remote procedures
-Ss             generate sample server code that defines remote procedures
-t              generate RPC dispatch table
-T              generate code to support RPC dispatch tables
-Y path         directory name to find C preprocessor (cpp)
clang: warning: argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'
clang: warning: argument unused during make[1]: compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'clangclangclangclangclang: : *** [vxi11_clnt.c] Error 1warning: : : warning: warning: warningwarning
argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib': argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib': argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'

argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'


clang: warning: clangargument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib': clang
warning: : warningargument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib':
argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'
clangclang: : warningwarning: : : argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib'argument unused during compilation: '-L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib'

...many more warnings...

/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose gpib_close.o gpib_class.o -o ../gpib_close.oct
    clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../gpib_timeout.oct  gpib_timeout.o gpib_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
    clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../gpib_write.oct  gpib_write.o gpib_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
    /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose gpib_read.o gpib_class.o-o ../gpib_read.oct
    clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../gpib_close.oct  gpib_close.o gpib_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
    clang: warning: argument unused during compilation: '-pthread'
    clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../gpib_read.oct  gpib_read.o gpib_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
    clangclang: /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __gpib_spoll__.o gpib_class.o  -o ../__gpib_spoll__.oct
    warning: clang: warning: argument unused during compilation: '-pthread'argument unused during compilation: '-pthread'

    : warning: argument unused during compilati/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __gpib_trigger__.o gpib_class.o  -o ../__gpib_trigger__.oct
    on: '-pthread'clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../__gpib_spoll__.oct  __gpib_spoll__.o gpib_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave

    clang: warniclang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../__gpib_trigger__.oct  __gpib_trigger__.o gpib_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
    ngclang: : argument unused during compilation: '-pthread'warning
    : argument unused during compilation: '-pthread'
    1 warning generated.
    /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __udp_properties__.o udp_class.o   -o ../__udp_properties__.oct
    clang: warning: argument unused during compilation: '-pthread'
    clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../__udp_properties__.oct  __udp_properties__.o udp_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
    clang: warning: argument unused during compilation: '-pthread'
    rm udp.o udp_timeout.o udp_close.o __udp_properties__.o udp_write.o udp_read.o
    /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/mkoctfile-4.0.3 --verbose __gpib_clrdevice__.o gpib_class.o  -o ../__gpib_clrdevice__.oct
    clang++ -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave/.. -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include/octave-4.0.3/octave -I/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/include -D_THREAD_SAFE -pthread -D_REENTRANT -L/Applications/Octave.app/Contents/Resources/usr/opt/suite-sparse/lib -lsuitesparseconfig -L/Applications/Octave.app/Contents/Resources/usr/opt/metis/lib -lmetis -bundle -bundle_loader /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/bin/octave-4.0.3  -o ../__gpib_clrdevice__.oct  __gpib_clrdevice__.o gpib_class.o   -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib/octave/4.0.3 -L/Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/lib -loctinterp -loctave
    clang: warning: argument unused during compilation: '-pthread'
    rm __gpib_trigger__.o gpib_write.o gpib_read.o __gpib_spoll__.o gpib.o __gpib_clrdevice__.o gpib_timeout.o gpib_close.o

    pkg: error running `make' for the instrument-control package.
    error: called from 'configure_make' in file /Applications/Octave.app/Contents/Resources/usr/Cellar/octave/4.0.3/share/octave/4.0.3/m/pkg/private/configure_make.m near line 96, column 9

Upvotes: 2

Views: 1745

Answers (1)

Xavi
Xavi

Reputation: 111

While it is not a full solution to this problem, this could be a workaround if the VXI-11 interface is not needed. For instance, this worked for me to read serial data form an Arduino Micro.

After reporting the bug in the GNU Octave's bug tracker Savannah (see here), I was able to install the octave instrument-control package (see comment #3) in:

  • Octave 4.4.1
  • macOS Mojave

Apparently, as it can also be seen in the above provided output, the error occurs when running

rpcgen -M vxi11.x

since the rpcgen appears not to have the -M option (needed for the installation, otherwise it does not compile). I tried installing a newer version of rpcgen for macOS that included a -M (see e.g. rpcgen-mt here and here), but it didn't work. By omitting the installation of vxi11 (VXI-11 interface), I was finally able to install the instrument-control package.

Here are the steps I followed for this solution:

  1. Download the instrument-control package from Octave Forge (e.g. here).

  2. Expand the downloaded *.tar.gz file.

  3. Open the Makefile.in inside src/ with your favourite text editor.

  4. There should be a line (line 2 in my case) indicating the subdirectories to be installed

    (e.g. SUBDIRS = serial parallel i2c usbtmc tcp udp gpib vxi11 resolvehost hwinfo)

    Remove vxi11 from the list.

    (i.e. SUBDIRS = serial parallel i2c usbtmc tcp udp gpib resolvehost hwinfo)

  5. Save changes.

  6. Generate the new .tar.gz file

    $ tar -czf instrument-control-0.3.1.tar.gz instrument-control-0.3.1/

    (with the appropriate numbers of the package version).

  7. Inside Octave, while in the same directory of the above generated .tar.gz file, run:

    > pkg install instrument-control-0.3.1.tar.gz -verbose

    (again with the appropriate numbers of the package version).

After the installation some warnings may appear mainly due to the fact that vxi11 was omitted.

warning: autoload: 'vxi11.oct' is not an absolute filename
warning: autoload: 'vxi11.oct' is not an absolute filename
warning: autoload: 'vxi11.oct' is not an absolute filename
warning: autoload: 'vxi11.oct' is not an absolute filename
For information about changes from previous versions of the instrument-control package, run 'news instrument-control'.

However, the output of > pkg list should include the instrument-control package (amongst any others installed packages):

Package Name        | Version | Installation directory
--------------------+---------+-----------------------
           control  |   3.1.0 | /Users/Xavi/octave/control-3.1.0
instrument-control  |   0.3.1 | /Users/Xavi/octave/instrument-control-0.3.1
            signal  |   1.4.0 | /Users/Xavi/octave/signal-1.4.0
          symbolic  |   2.7.1 | /Users/Xavi/octave/symbolic-2.7.1

In addition, some warnings may also appear every time the instrument-control package is loaded for the first time (> pkg load instrument-control). This warnings again refer to the missing installation of vxi11.

Despite of these warnings, I have been able to correctly read serial data form an Arduino Micro.

Upvotes: 1

Related Questions