我在OSX 10.10.5上运行Octave 4.0.3。当我尝试使用以下方法安装仪器控制包时:
>> pkg install -forge instrument-control -verbose
我收到以下错误:
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
在构建期间有一堆警告,但在编译期间它们都是被忽略的选项。
我已经成功安装了其他软件包(控制,信号)。这可能是兼容性问题吗?最终,我需要使用八度音程与串行设备进行通信。
更新
一名学生使用Octave 3.8.0尝试了相同的操作,我用4.2.0尝试了相同的结果。
我尝试使用-verbose并且似乎没有任何更多信息。对于未使用的选项有很多警告,但是(页面的)输出中没有任何指示任何提示。在顶部,我得到:
>> 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
这似乎表明我有我需要的工具。 configure_make的相关行是:
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
完成命令的输出:
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'
......更多警告......
/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
答案 0 :(得分:0)
虽然不能完全解决此问题,但是如果不需要VXI-11接口,这可能是一种解决方法。例如,这对我来说可以从Arduino Micro读取串行数据。
在报告GNU Octave's bug tracker萨凡纳(请参阅here)中的错误之后,我能够在以下位置安装八度instrument-control
软件包(请参阅comment #3):
显然,从上面提供的输出中也可以看出,运行时会发生错误
rpcgen -M vxi11.x
因为rpcgen
似乎没有-M
选项(安装需要,否则它不会编译)。我尝试为包含rpcgen
的macOS安装-M
的较新版本(例如,见rpcgen-mt
here和here),但是没有用。通过省略vxi11
(VXI-11 interface)的安装,我终于能够安装instrument-control
软件包。
这是我为该解决方案所遵循的步骤:
从 Octave Forge (例如here)下载乐器控制包。
展开下载的*.tar.gz
文件。
使用您喜欢的文本编辑器打开Makefile.in
内的src/
。
应该有一行(对于我来说是第2行)指示要安装的子目录
(例如SUBDIRS = serial parallel i2c usbtmc tcp udp gpib vxi11 resolvehost hwinfo
)
从列表中删除vxi11
。
(即SUBDIRS = serial parallel i2c usbtmc tcp udp gpib resolvehost hwinfo
)
保存更改。
生成新的.tar.gz
文件
$ tar -czf instrument-control-0.3.1.tar.gz instrument-control-0.3.1/
(带有相应的软件包版本号)。
在八度中,在与上面生成的.tar.gz
文件相同的目录中,运行:
> pkg install instrument-control-0.3.1.tar.gz -verbose
(再次使用相应的软件包版本号)。
安装后,可能会出现一些警告,主要是由于省略了vxi11
。
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'.
但是,> pkg list
的输出应包括instrument-control
软件包(在所有其他已安装软件包中):
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
此外,每次首次装入instrument-control
软件包(> pkg load instrument-control
)时,也会出现一些警告。此警告再次表示缺少vxi11
的安装。
尽管有这些警告,我仍然能够从Arduino Micro正确读取串行数据。