From bug-octave-request at bevo dot che dot wisc dot edu Fri Jan 28 11:52:26 2000 Subject: undesired behavior of system() From: Martin Buenner To: bug-octave at bevo dot che dot wisc dot edu Date: Fri, 28 Jan 2000 11:52:56 -0600 (CST) This is a multi-part message in MIME format. --------------6D47775FC37BA6ABD03D31F8 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit I noticed a problem with [out,stat]=system('program'), there 'program' is a executable shell-command. From time to time, 'system()' returns a return code 'stat' not equal to zero, even if 'program' had no problems. I verified the behavior with (1) GNU Octave, version 2.0.14 (hppa1.1-hp-hpux10.20) on a HP work station with HP-UX B.10.20 A 9000/778 (2) GNU Octave, version 2.0.14 (alpha-suse-linux-gnu) on a Linux 2.2.10 i686, pre-compiled by Suse. For testing the return code of the shell script, I run N=0;for i=1:10000,[out,stat]=system('ls');if stat,N++,endif;endfor N will vary if you start that sequence several times. For example: In case (1) the result of two runs had been: N = 30, N = 28 In case (2) the result of two runs had been: N = 685, N = 688 For further information I attach two files including the values of octave_config_info on my HP-installation, as well as on Linux. Best regards, Martin -- ***************************************************************** * Dr. Martin J. Buenner * * EPCOS AG * * Surface Acoustic Wave Components * * OFW E NT * * Anzinger Str. 13 Phone: ++49 89 636 26182 * * D-81617 Munich Fax: ++49 89 636 27304 * * Germany E-mail: martin dot buenner at epcos dot com * ***************************************************************** --------------6D47775FC37BA6ABD03D31F8 Content-Type: text/plain; charset=iso-8859-1; name="HP.conf.asc" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline; filename="HP.conf.asc" GNU Octave, version 2.0.14 (hppa1.1-hp-hpux10.20). Copyright (C) 1996, 1997, 1998, 1999 John W. Eaton. This is free software with ABSOLUTELY NO WARRANTY. For details, type `warranty'. ans =3D { bindir =3D /opt/pubdom/bin imagepath =3D .:/opt/pubdom/share/octave/2.0.14/imagelib// F2CFLAGS =3D = FLIBS =3D -lg2c -lm -L/lib/pa1.1 -L/usr/lib/pa1.1 -u main -L/opt/pubdom= /lib/gcc-lib/hppa2.0-hp-hpux10.20/2.95.1 -L/usr/ccs/bin -L/usr/ccs/lib -L= /opt/pubdom/lib -lm CPPFLAGS =3D = CFLAGS =3D -DHAVE_CONFIG_H -O2 -Wall CXXFLAGS =3D -DHAVE_CONFIG_H -fno-rtti -fno-exceptions -fno-implicit-te= mplates -O2 -Wall LEXLIB =3D = datadir =3D /opt/pubdom/share localfcnfiledir =3D /opt/pubdom/share/octave/site/m CPICFLAG =3D -fPIC CXXPICFLAG =3D -fPIC exec_prefix =3D /opt/pubdom startupfiledir =3D /opt/pubdom/share/octave/2.0.14/m/startup TERMLIBS =3D -lcurses LIBS =3D -ldld -lm = LIBPLPLOT =3D = DEFS =3D -DOCTAVE_SOURCE=3D1 -DSEPCHAR=3D':' -DSEPCHAR_STR=3D":" -DUSE_= READLINE=3D1 -D__NO_MATH_INLINES=3D1 -DCXX_NEW_FRIEND_TEMPLATE_DECL=3D1 -= DHAVE_LIBM=3D1 -DF77_APPEND_UNDERSCORE=3D1 -DSIZEOF_SHORT=3D2 -DSIZEOF_IN= T=3D4 -DSIZEOF_LONG=3D4 -DHAVE_ALLOCA_H=3D1 -DHAVE_ALLOCA=3D1 -DNPOS=3Dst= ring::npos -DSTDC_HEADERS=3D1 -DHAVE_DIRENT_H=3D1 -DTIME_WITH_SYS_TIME=3D= 1 -DHAVE_SYS_WAIT_H=3D1 -DHAVE_ASSERT_H=3D1 -DHAVE_CURSES_H=3D1 -DHAVE_FC= NTL_H=3D1 -DHAVE_FLOAT_H=3D1 -DHAVE_FNMATCH_H=3D1 -DHAVE_GLOB_H=3D1 -DHAV= E_GRP_H=3D1 -DHAVE_LIMITS_H=3D1 -DHAVE_MEMORY_H=3D1 -DHAVE_NAN_H=3D1 -DHA= VE_PWD_H=3D1 -DHAVE_SGTTY_H=3D1 -DHAVE_STDLIB_H=3D1 -DHAVE_STRING_H=3D1 -= DHAVE_SYS_PARAM_H=3D1 -DHAVE_SYS_RESOURCE_H=3D1 -DHAVE_SYS_STAT_H=3D1 -DH= AVE_SYS_TIME_H=3D1 -DHAVE_SYS_TIMES_H=3D1 -DHAVE_SYS_TYPES_H=3D1 -DHAVE_S= YS_UTSNAME_H=3D1 -DHAVE_TERMIO_H=3D1 -DHAVE_TERMIOS_H=3D1 -DHAVE_UNISTD_H= =3D1 -DHAVE_VARARGS_H=3D1 -DHAVE_ATEXIT=3D1 -DHAVE_BCOPY=3D1 -DHAVE_BZERO= =3D1 -DHAVE_DUP2=3D1 -DHAVE_ENDGRENT=3D1 -DHAVE_ENDPWENT=3D1 -DHAVE_EXECV= P=3D1 -DHAVE_FCNTL=3D1 -DHAVE_FORK=3D1 -DHAVE_GETCWD=3D1 -DHAVE_GETEGID=3D= 1 -DHAVE_GETEUID=3D1 -DHAVE_GETGID=3D1 -DHAVE_GETGRENT=3D1 -DHAVE_GETGRGI= D=3D1 -DHAVE_GETGRNAM=3D1 -DHAVE_GETHOSTNAME=3D1 -DHAVE_GETPGRP=3D1 -DHAV= E_GETPID=3D1 -DHAVE_GETPPID=3D1 -DHAVE_GETPWENT=3D1 -DHAVE_GETPWNAM=3D1 -= DHAVE_GETPWUID=3D1 -DHAVE_GETTIMEOFDAY=3D1 -DHAVE_GETUID=3D1 -DHAVE_GETWD= =3D1 -DHAVE_LSTAT=3D1 -DHAVE_MEMMOVE=3D1 -DHAVE_MKDIR=3D1 -DHAVE_MKFIFO=3D= 1 -DHAVE_PIPE=3D1 -DHAVE_PUTENV=3D1 -DHAVE_RENAME=3D1 -DHAVE_RINDEX=3D1 -= DHAVE_RMDIR=3D1 -DHAVE_SETGRENT=3D1 -DHAVE_SETPWENT=3D1 -DHAVE_SETVBUF=3D= 1 -DHAVE_SIGACTION=3D1 -DHAVE_SIGPENDING=3D1 -DHAVE_SIGPROCMASK=3D1 -DHAV= E_SIGSUSPEND=3D1 -DHAVE_STAT=3D1 -DHAVE_STRCASECMP=3D1 -DHAVE_STRDUP=3D1 = -DHAVE_STRERROR=3D1 -DHAVE_STRNCASECMP=3D1 -DHAVE_TEMPNAM=3D1 -DHAVE_UMAS= K=3D1 -DHAVE_UNLINK=3D1 -DHAVE_USLEEP=3D1 -DHAVE_VFPRINTF=3D1 -DHAVE_VSPR= INTF=3D1 -DHAVE_WAITPID=3D1 -DHAVE_LIBDLD=3D1 -DHAVE_SHL_LOAD=3D1 -DHAVE_= SHL_FINDSYM=3D1 -DWITH_SHL=3D1 -DWITH_DYNAMIC_LINKING=3D1 -DHAVE_FINITE=3D= 1 -DHAVE_ISNAN=3D1 -DHAVE_ISINF=3D1 -DHAVE_ACOSH=3D1 -DHAVE_ASINH=3D1 -DH= AVE_ATANH=3D1 -DHAVE_ERF=3D1 -DHAVE_ERFC=3D1 -DHAVE_ST_BLKSIZE=3D1 -DHAVE= _ST_BLOCKS=3D1 -DHAVE_ST_RDEV=3D1 -DHAVE_TZNAME=3D1 -DHAVE_GR_PASSWD=3D1 = -DEXCEPTION_IN_MATH=3D1 -DRETSIGTYPE=3Dvoid -DHAVE_POSIX_SIGNALS=3D1 -DHA= VE_GETRUSAGE=3D1 -DHAVE_TIMES=3D1 -DGNUPLOT_HAS_MULTIPLOT=3D1 -DGNUPLOT_H= AS_FRAMES=3D1 default_pager =3D less infodir =3D /opt/pubdom/info FFLAGS =3D -O F2C =3D = CXX =3D c++ 2.95.1 19990816 (release) RLD_FLAG =3D -Xlinker +b -Xlinker /opt/pubdom/lib/octave-2.0.14 dld =3D 1 archlibdir =3D /opt/pubdom/lib/octave/2.0.14/exec/hppa1.1-hp-hpux10.20 fcnfilepath =3D .:/opt/pubdom/lib/octave/site/oct/hppa1.1-hp-hpux10.20/= /:/opt/pubdom/share/octave/site/m//:/opt/pubdom/lib/octave/2.0.14/oct/hpp= a1.1-hp-hpux10.20//:/opt/pubdom/share/octave/2.0.14/m// F77 =3D g77 FPICFLAG =3D -fPIC LIBFLAGS =3D -L/opt/pubdom/lib/octave-2.0.14 localstartupfiledir =3D /opt/pubdom/share/octave/site/m/startup octfiledir =3D /opt/pubdom/lib/octave/2.0.14/oct/hppa1.1-hp-hpux10.20 configure_options =3D --prefix=3D/opt/pubdom --enable-shl --enable-shar= ed --libexec=3D/opt/pubdom/lib LDFLAGS =3D -g prefix =3D /opt/pubdom libdir =3D /opt/pubdom/lib fcnfiledir =3D /opt/pubdom/share/octave/2.0.14/m localoctfilepath =3D /opt/pubdom/lib/octave/site/oct/hppa1.1-hp-hpux10.= 20// canonical_host_type =3D hppa1.1-hp-hpux10.20 CC =3D gcc 2.95.1 19990816 (release) LIBDLFCN =3D = localfcnfilepath =3D /opt/pubdom/share/octave/site/m// localarchlibdir =3D /opt/pubdom/lib/octave/site/exec/hppa1.1-hp-hpux10.= 20 INCFLAGS =3D -I/opt/pubdom/include -I/opt/pubdom/include/octave-2.0.14 } --------------6D47775FC37BA6ABD03D31F8 Content-Type: text/plain; charset=iso-8859-1; name="Linux.conf.asc" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline; filename="Linux.conf.asc" GNU Octave, version 2.0.14 (alpha-suse-linux-gnu). Copyright (C) 1996, 1997, 1998, 1999 John W. Eaton. This is free software with ABSOLUTELY NO WARRANTY. For details, type `warranty'. ans =3D { bindir =3D /usr/bin imagepath =3D .:/usr/share/octave/2.0.14/imagelib// F2CFLAGS =3D = FLIBS =3D -lg2c -lm -L/usr/lib/gcc-lib/i486-linux/egcs-2.91.66 -L/usr/i= 486-linux/lib -lm CPPFLAGS =3D = CFLAGS =3D -DHAVE_CONFIG_H -D_GNU_SOURCE CXXFLAGS =3D -DHAVE_CONFIG_H -fno-rtti -fno-exceptions -fno-implicit-te= mplates -D_GNU_SOURCE LEXLIB =3D = datadir =3D /usr/share localfcnfiledir =3D /usr/share/octave/site/m CPICFLAG =3D -fPIC CXXPICFLAG =3D -fPIC exec_prefix =3D /usr startupfiledir =3D /usr/share/octave/2.0.14/m/startup TERMLIBS =3D -lncurses LIBS =3D -ldl -lm = LIBPLPLOT =3D = DEFS =3D -DOCTAVE_SOURCE=3D1 -DSEPCHAR=3D':' -DSEPCHAR_STR=3D":" -DUSE_= READLINE=3D1 -D__NO_MATH_INLINES=3D1 -DCXX_NEW_FRIEND_TEMPLATE_DECL=3D1 -= DHAVE_LIBM=3D1 -DF77_APPEND_UNDERSCORE=3D1 -DOCTAVE_LITE=3D1 -DSIZEOF_SHO= RT=3D2 -DSIZEOF_INT=3D4 -DSIZEOF_LONG=3D4 -DHAVE_ALLOCA_H=3D1 -DHAVE_ALLO= CA=3D1 -DNPOS=3Dstring::npos -DSTDC_HEADERS=3D1 -DHAVE_DIRENT_H=3D1 -DTIM= E_WITH_SYS_TIME=3D1 -DHAVE_SYS_WAIT_H=3D1 -DHAVE_ASSERT_H=3D1 -DHAVE_CURS= ES_H=3D1 -DHAVE_DLFCN_H=3D1 -DHAVE_FCNTL_H=3D1 -DHAVE_FLOAT_H=3D1 -DHAVE_= FNMATCH_H=3D1 -DHAVE_GLOB_H=3D1 -DHAVE_GRP_H=3D1 -DHAVE_LIMITS_H=3D1 -DHA= VE_MEMORY_H=3D1 -DHAVE_NCURSES_H=3D1 -DHAVE_PWD_H=3D1 -DHAVE_SGTTY_H=3D1 = -DHAVE_STDLIB_H=3D1 -DHAVE_STRING_H=3D1 -DHAVE_SYS_PARAM_H=3D1 -DHAVE_SYS= _RESOURCE_H=3D1 -DHAVE_SYS_SELECT_H=3D1 -DHAVE_SYS_STAT_H=3D1 -DHAVE_SYS_= TIME_H=3D1 -DHAVE_SYS_TIMES_H=3D1 -DHAVE_SYS_TYPES_H=3D1 -DHAVE_SYS_UTSNA= ME_H=3D1 -DHAVE_TERMCAP_H=3D1 -DHAVE_TERMIO_H=3D1 -DHAVE_TERMIOS_H=3D1 -D= HAVE_UNISTD_H=3D1 -DHAVE_VARARGS_H=3D1 -DHAVE_ATEXIT=3D1 -DHAVE_BCOPY=3D1= -DHAVE_BZERO=3D1 -DHAVE_DUP2=3D1 -DHAVE_ENDGRENT=3D1 -DHAVE_ENDPWENT=3D1= -DHAVE_EXECVP=3D1 -DHAVE_FCNTL=3D1 -DHAVE_FORK=3D1 -DHAVE_GETCWD=3D1 -DH= AVE_GETEGID=3D1 -DHAVE_GETEUID=3D1 -DHAVE_GETGID=3D1 -DHAVE_GETGRENT=3D1 = -DHAVE_GETGRGID=3D1 -DHAVE_GETGRNAM=3D1 -DHAVE_GETHOSTNAME=3D1 -DHAVE_GET= PGRP=3D1 -DHAVE_GETPID=3D1 -DHAVE_GETPPID=3D1 -DHAVE_GETPWENT=3D1 -DHAVE_= GETPWNAM=3D1 -DHAVE_GETPWUID=3D1 -DHAVE_GETTIMEOFDAY=3D1 -DHAVE_GETUID=3D= 1 -DHAVE_GETWD=3D1 -DHAVE_LSTAT=3D1 -DHAVE_MEMMOVE=3D1 -DHAVE_MKDIR=3D1 -= DHAVE_MKFIFO=3D1 -DHAVE_ON_EXIT=3D1 -DHAVE_PIPE=3D1 -DHAVE_PUTENV=3D1 -DH= AVE_RENAME=3D1 -DHAVE_RINDEX=3D1 -DHAVE_RMDIR=3D1 -DHAVE_SETGRENT=3D1 -DH= AVE_SETPWENT=3D1 -DHAVE_SETVBUF=3D1 -DHAVE_SIGACTION=3D1 -DHAVE_SIGPENDIN= G=3D1 -DHAVE_SIGPROCMASK=3D1 -DHAVE_SIGSUSPEND=3D1 -DHAVE_STAT=3D1 -DHAVE= _STRCASECMP=3D1 -DHAVE_STRDUP=3D1 -DHAVE_STRERROR=3D1 -DHAVE_STRNCASECMP=3D= 1 -DHAVE_TEMPNAM=3D1 -DHAVE_UMASK=3D1 -DHAVE_UNLINK=3D1 -DHAVE_USLEEP=3D1= -DHAVE_VFPRINTF=3D1 -DHAVE_VSPRINTF=3D1 -DHAVE_WAITPID=3D1 -DHAVE_PROGRA= M_INVOCATION_NAME=3D1 -DHAVE_LIBDL=3D1 -DHAVE_DLOPEN=3D1 -DHAVE_DLSYM=3D1= -DHAVE_DLERROR=3D1 -DHAVE_DLCLOSE=3D1 -DWITH_DL=3D1 -DWITH_DYNAMIC_LINKI= NG=3D1 -DHAVE_FINITE=3D1 -DHAVE_ISNAN=3D1 -DHAVE_ISINF=3D1 -DHAVE_ACOSH=3D= 1 -DHAVE_ASINH=3D1 -DHAVE_ATANH=3D1 -DHAVE_ERF=3D1 -DHAVE_ERFC=3D1 -DHAVE= _ST_BLKSIZE=3D1 -DHAVE_ST_BLOCKS=3D1 -DHAVE_ST_RDEV=3D1 -DHAVE_TM_ZONE=3D= 1 -DHAVE_GR_PASSWD=3D1 -DEXCEPTION_IN_MATH=3D1 -DRETSIGTYPE=3Dvoid -DSYS_= SIGLIST_DECLARED=3D1 -DHAVE_SYS_SIGLIST=3D1 -DHAVE_POSIX_SIGNALS=3D1 -DHA= VE_GETRUSAGE=3D1 -DHAVE_TIMES=3D1 default_pager =3D less infodir =3D /usr/info FFLAGS =3D -O F2C =3D = CXX =3D c++ 2.91.66 19990314/Linux (egcs-1.1.2 release) RLD_FLAG =3D -Xlinker -rpath -Xlinker /usr/lib/octave-2.0.14 dld =3D 1 archlibdir =3D /usr/libexec/octave/2.0.14/exec/alpha-suse-linux-gnu fcnfilepath =3D .:/usr/libexec/octave/site/oct/alpha-suse-linux-gnu//:/= usr/share/octave/site/m//:/usr/libexec/octave/2.0.14/oct/alpha-suse-linux= -gnu//:/usr/share/octave/2.0.14/m// F77 =3D g77 FPICFLAG =3D -fPIC LIBFLAGS =3D -L/usr/lib/octave-2.0.14 localstartupfiledir =3D /usr/share/octave/site/m/startup octfiledir =3D /usr/libexec/octave/2.0.14/oct/alpha-suse-linux-gnu configure_options =3D --prefix=3D/usr --exec-prefix=3D/usr --enable-sha= red --enable-lite-kernel --host=3Dalpha-suse-linux LDFLAGS =3D -g prefix =3D /usr libdir =3D /usr/lib fcnfiledir =3D /usr/share/octave/2.0.14/m localoctfilepath =3D /usr/libexec/octave/site/oct/alpha-suse-linux-gnu/= / canonical_host_type =3D alpha-suse-linux-gnu CC =3D gcc 2.91.66 19990314/Linux (egcs-1.1.2 release) LIBDLFCN =3D = localfcnfilepath =3D /usr/share/octave/site/m// localarchlibdir =3D /usr/libexec/octave/site/exec/alpha-suse-linux-gnu INCFLAGS =3D -I/usr/include -I/usr/include/octave-2.0.14 } --------------6D47775FC37BA6ABD03D31F8-- ----------------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.che.wisc.edu/octave/octave.html How to fund new projects: http://www.che.wisc.edu/octave/funding.html Subscription information: http://www.che.wisc.edu/octave/archive.html -----------------------------------------------------------------------