From bug-octave-request at bevo dot che dot wisc dot edu Tue Nov 19 10:08:20 2002 Subject: Re: Unidentified subject! From: Paul Kienzle To: "Dipl.-Ing. Stefan Zimmermann" Cc: bug-octave at bevo dot che dot wisc dot edu, sz@lapita.soundzentrum.de Date: Tue, 19 Nov 2002 11:08:10 -0500 This is probably another instance of the sprintf bug. Try the following: octave:3> sprintf("%s",setstr(toascii('0')+mod([1:160],10))) ans = 1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890 John gave a patch for sprintf in: http://www.octave.org/mailing-lists/bug-octave/2002/221 You can work around the problem by replacing p = sprintf ("%s:%s", p, varargin{i}); with p = [ p, ":", varargin{i} ] in path.m (assuming CVS version of octave-forge --- if you are using the last distribution from May, then the code will still use the va_arg() syntax rather than varargin{i}). Paul Kienzle pkienzle at users dot sf dot net On Tue, Nov 19, 2002 at 07:49:46AM -0600, Dipl.-Ing. Stefan Zimmermann wrote: > To: bug-octave at bevo dot che dot wisc dot edu > Cc: sz > Subject: LOADPATH variable is not set correctly from octaverc with path-command > > Bug report for Octave 2.1.39 configured for i586-suse-linux-gnu > > Description: > ----------- > > The LOADPATH variable does not contain the path-names is should when I > use my matlab compatible startup-file. This contains several commands > like: path(path,'newdir'); but only a few of them get actually set > correctly in LOADPATH. The same octaverc worked fine with the 2.1.35 > from redhat but in 2.1.36 and 2.1.39 (this is what I checked) it does not > work. > > > Repeat-By: > --------- > > Use this as octaverc: Pathnames must exist of course: > ----Snip----- > % $Id: startup.m,v 2.0 2002/09/19 15:40:37 sz Exp $ > % Startup-File for matlab for shz/sz on ISVR Computers > % and octave (~/.octaverc has to be a link to this file) > > % Test if it is windows, otherwise unix > if strcmp(computer,'PCWIN') > verz='C:/home/shz/matlab/'; > else > verz=[getenv('HOME') '/matlab/']; > end > > % Customize search-path > path(path,'.'); > path(path,verz); > path(path,[verz 'acoustic']); > path(path,[verz 'raumakustik']); > path(path,[verz 'absorber']); > path(path,[verz 'resonator']); > path(path,[verz 'math']); > path(path,[verz 'fileio']); > path(path,[verz 'kanal']); > path(path,[verz 'sort']); > path(path,[verz 'ts']); > path(path,[verz 'ts/KEF']); > path(path,[verz 'ts/img']); > path(path,[verz 'ts/Visaton']); > path(path,[verz 'ts/Nokia']); > path(path,[verz 'ts/Dynacord']); > path(path,[verz 'contrib']); > > % Variables to make octave matlab-compatible > % They won't harm matlab, but try to be secure > if (strcmp(version,'2.0.16') | strcmp(version,'2.1.34') | strcmp(version,'2.1.35')) > do_fortran_indexing=1; > prefer_column_vectors=0; > > % and support nice gnuplot features as matlab does > gnuplot_has_frames=1; > gnuplot_has_multiplot=1; > path(path,[verz 'gnuplot']); > end > > % Clear the variables used so far (won't affect the settings from above) > clear > > ----Snip---- > > Start octave and type LOADPATH gives: > LOADPATH = ::.:/home/sz/matlab/:/home/sz/matlab/acoustic:/home/sz/matlab/raumakustik:/home/sz/matlab/absorber::/home/sz/matlab/contrib > > All the directories exist and are readable, but are not added to LOADPATH. > > > Configuration (please do not edit this section): > ----------------------------------------------- > > uname output: Linux lapita 2.4.19-4GB #1 Fri Sep 13 13:14:56 UTC 2002 i686 unknown > configure opts: 'i586-suse-linux' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--enable-dl' '--enable-shared=yes' '--enable-rpath' '--enable-lite-kernel' '--enable-picky-flags' '--enable-static=no' 'CFLAGS=-O2 -march=i586' 'CXXFLAGS=-O2 -march=i586 -fno-use-cxa-atexit' 'FFLAGS=-O2 -march=i586' 'build_alias=i586-suse-linux' 'host_alias=i586-suse-linux' 'target_alias=i586-suse-linux' > Fortran compiler: g77 > FFLAGS: -O2 -march=i586 > F2C: > F2CFLAGS: > FLIBS: -L/usr/lib/gcc-lib/i486-suse-linux/3.2 -L/usr/lib/gcc-lib/i486-suse-linux/3.2/../../../../i486-suse-linux/lib -L/usr/lib/gcc-lib/i486-suse-linux/3.2/../../.. -lfrtbegin -lg2c -lm -lgcc_s > CPPFLAGS: > INCFLAGS: -I. -I. -I./liboctave -I./src -I./libcruft/misc -I./glob -I./glob > C compiler: gcc, version 3.2 > CFLAGS: -O2 -march=i586 > CPICFLAG: -fPIC > C++ compiler: g++, version 3.2 > CXXFLAGS: -O2 -march=i586 -fno-use-cxa-atexit > CXXPICFLAG: -fPIC > LD_CXX: g++ > LDFLAGS: > LIBFLAGS: -L. > RLD_FLAG: -Xlinker -rpath -Xlinker /usr/lib/octave-2.1.39 > BLAS_LIBS: -llapack -lblas > FFTW_LIBS: > LIBS: -lreadline -lncurses -ldl -lm > LEXLIB: > LIBPLPLOT: > LIBDLFCN: > LIBGLOB: ./glob/glob.o ./glob/fnmatch.o > SED: /bin/sed > DEFS: > > -DPACKAGE_NAME="" -DPACKAGE_TARNAME="" -DPACKAGE_VERSION="" > -DPACKAGE_STRING="" -DPACKAGE_BUGREPORT="" -DOCTAVE_SOURCE=1 > -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 > -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 > -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DSEPCHAR=1 > -DSEPCHAR_STR=":" -D__NO_MATH_INLINES=1 -DCXX_NEW_FRIEND_TEMPLATE_DECL=1 > -DCXX_ISO_COMPLIANT_LIBRARY=1 -DCXX_ABI=unknown -DHAVE_LIBM=1 > -DF77_FUNC(name,NAME)=name ## _ -DF77_FUNC_(name,NAME)=name ## __ > -DHAVE_BLAS=1 -DHAVE_GETHOSTNAME=1 -DHAVE_GETPWNAM=1 -DSIZEOF_SHORT=2 > -DSIZEOF_INT=4 -DSIZEOF_LONG=4 -DSIZEOF_LONG_LONG=8 -DHAVE_ALLOCA_H=1 > -DHAVE_ALLOCA=1 -DNPOS=std::string::npos -DSTDC_HEADERS=1 > -DHAVE_DIRENT_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_SYS_WAIT_H=1 > -DHAVE_ASSERT_H=1 -DHAVE_CURSES_H=1 -DHAVE_DLFCN_H=1 -DHAVE_FCNTL_H=1 > -DHAVE_FLOAT_H=1 -DHAVE_GRP_H=1 -DHAVE_LIMITS_H=1 -DHAVE_MEMORY_H=1 > -DHAVE_NCURSES_H=1 -DHAVE_POLL_H=1 -DHAVE_PWD_H=1 -DHAVE_STDLIB_H=1 > -DHAVE_STRING_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_PARAM_H=1 > -DHAVE_SYS_POLL_H=1 -DHAVE_SYS_RESOURCE_H=1 -DHAVE_SYS_SELECT_H=1 > -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_SYS_TIMES_H=1 > -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_UTSNAME_H=1 -DHAVE_TERMCAP_H=1 > -DHAVE_UNISTD_H=1 -DHAVE_VARARGS_H=1 -DHAVE_SSTREAM=1 -DHAVE_TERMIO_H=1 > -DHAVE_SGTTY_H=1 -DHAVE_GLOB_H=1 -DHAVE_FNMATCH_H=1 -DHAVE_ATEXIT=1 > -DHAVE_BCOPY=1 -DHAVE_BZERO=1 -DHAVE_DUP2=1 -DHAVE_ENDGRENT=1 > -DHAVE_ENDPWENT=1 -DHAVE_EXECVP=1 -DHAVE_FCNTL=1 -DHAVE_FORK=1 > -DHAVE_GETCWD=1 -DHAVE_GETEGID=1 -DHAVE_GETEUID=1 -DHAVE_GETGID=1 > -DHAVE_GETGRENT=1 -DHAVE_GETGRGID=1 -DHAVE_GETGRNAM=1 -DHAVE_GETPGRP=1 > -DHAVE_GETPID=1 -DHAVE_GETPPID=1 -DHAVE_GETPWENT=1 -DHAVE_GETPWUID=1 > -DHAVE_GETTIMEOFDAY=1 -DHAVE_GETUID=1 -DHAVE_GETWD=1 -DHAVE_KILL=1 > -DHAVE_LINK=1 -DHAVE_LOCALTIME_R=1 -DHAVE_LSTAT=1 -DHAVE_MEMMOVE=1 > -DHAVE_MKDIR=1 -DHAVE_MKFIFO=1 -DHAVE_ON_EXIT=1 -DHAVE_PIPE=1 > -DHAVE_POLL=1 -DHAVE_PUTENV=1 -DHAVE_RAISE=1 -DHAVE_READLINK=1 > -DHAVE_RENAME=1 -DHAVE_RINDEX=1 -DHAVE_RMDIR=1 -DHAVE_SELECT=1 > -DHAVE_SETGRENT=1 -DHAVE_SETPWENT=1 -DHAVE_SETVBUF=1 -DHAVE_SIGACTION=1 > -DHAVE_SIGPENDING=1 -DHAVE_SIGPROCMASK=1 -DHAVE_SIGSUSPEND=1 -DHAVE_STAT=1 > -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRFTIME=1 > -DHAVE_STRNCASECMP=1 -DHAVE_STRPTIME=1 -DHAVE_SYMLINK=1 -DHAVE_TEMPNAM=1 > -DHAVE_UMASK=1 -DHAVE_UNLINK=1 -DHAVE_USLEEP=1 -DHAVE_VFPRINTF=1 > -DHAVE_VSPRINTF=1 -DHAVE_VSNPRINTF=1 -DHAVE_WAITPID=1 -DHAVE_LIBDL=1 > -DHAVE_DLOPEN=1 -DHAVE_DLSYM=1 -DHAVE_DLERROR=1 -DHAVE_DLCLOSE=1 > -DHAVE_DLOPEN_API=1 -DENABLE_DYNAMIC_LINKING=1 -DHAVE_TIMEVAL=1 > -DHAVE_FINITE=1 -DHAVE_ISNAN=1 -DHAVE_ISINF=1 -DHAVE_ACOSH=1 > -DHAVE_ASINH=1 -DHAVE_ATANH=1 -DHAVE_ERF=1 -DHAVE_ERFC=1 > -DHAVE_STRUCT_STAT_ST_BLKSIZE=1 -DHAVE_STRUCT_STAT_ST_BLOCKS=1 > -DHAVE_STRUCT_STAT_ST_RDEV=1 -DHAVE_STRUCT_TM_TM_ZONE=1 > -DHAVE_TM_ZONE=1 -DUSE_READLINE=1 -DEXCEPTION_IN_MATH=1 > -DRETSIGTYPE=void -DSYS_SIGLIST_DECLARED=1 -DHAVE_SYS_SIGLIST=1 > -DHAVE_POSIX_SIGNALS=1 -DHAVE_DEV_T=1 -DHAVE_INO_T=1 -DHAVE_NLINK_T=1 > -DHAVE_NLINK_T=1 -DHAVE_SIGSET_T=1 -DHAVE_GETRUSAGE=1 -DHAVE_TIMES=1 > -DYYTEXT_POINTER=1 -DGNUPLOT_BINARY="gnuplot" -DGNUPLOT_HAS_MULTIPLOT=1 > -DGNUPLOT_HAS_FRAMES=1 > > > > ------------------------------------------------------------- > Octave is freely available under the terms of the GNU GPL. > > Octave's home on the web: http://www.octave.org > How to fund new projects: http://www.octave.org/funding.html > Subscription information: http://www.octave.org/archive.html > ------------------------------------------------------------- > ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------