Windows issues (was RE: [Maxima] New release candidate with windows installer available)
Subject: Windows issues (was RE: [Maxima] New release candidate with windows installer available)
From: James Amundson
Date: 03 Feb 2003 22:12:58 -0600
Several windows issues have been identified. I need more help to fix
some of them:
1) Some numerical tests fail on amd processors. I tried to configure gcl
for a lowest-common-denominator cpu, but either I misunderstood the
directions I got, or the directions were wrong. Either way, I think I
have fixed the problem, but I have no way to test it. (See below.)
2) Not enough include files were included in the installer. I think I
have fixed this problem by including the list provided by David. (Thank
you, David!)
I have a hacked-up installer with fixes (1) and (2) in my private web
area, <http://www.wideopenwest.com/~jfamundson/maxima-5.9.0.rc4.exe>.
This is not an officially released file. I would, however, appreciate
knowing if it solves problems.
3) Even with the fix in (2), compiles fail on Windows 98. After a long
session of trials and errors, I think I have determined that it is
because the element I append to the PATH becomes
C:/PROGRAM FILES/MAXIMA-5.9.0.RC4\bin\
where it has to be
C:\Program Files\Maxima-5.9.0.rc4\bin
or
C:\PROGRAM FILES\MAXIMA-5.9.0.RC4\BIN
for the compile to work. This is a completely empirical statement -- I
don't understand the principles involved. The tcl code in Paths.tcl in
question is
# jfa: extend path so that gcl can see gcc in windows package
# I don't know that this is the best place for this
if {$tcl_platform(platform) == "windows"} {
set env(PATH) "$maxima_priv(maxima_prefix)\\bin\\;$env(PATH)"
}
If someone can suggest a change that will work both on Windows 98 and
later versions of Windows, I would be very grateful. I need help with
both the Windows issues and the TCL syntax.
--Jim
On Sat, 2003-02-01 at 06:34, Billinghurst, David (CRTS) wrote:
> I hate replying to my own mail. Ignore the fix in it. As is often the case,
> I found the real problem just after I posted the wrong fix.
>
> The problem is that a few of the gcc header files are missing, so that
> the compile test in rtest15.mac aborts and doesn't clean up after itself.
>
> The fix is to copy the following gcc files:
> lib/gcc-lib/mingw32/3.2/include/*.h (but not the subdirectories)
> include/math.h
> include/unistd.h
> include/io.h
> include/process.h
> include/sys/*.h
>
> then confirm that the compiler works
>
> (C1) f(x):=x+2;
> (D1) f(x) := x + 2
> (C2) compile(f);
> Compiling gazonk1.lsp.
> End of Pass 1.
> End of Pass 2.
> OPTIMIZE levels: Safety=2, Space=2, Speed=2
> Finished compiling gazonk1.lsp.
> (D2) [f]
> (C3)
>
> -----Original Message-----
> From: CRTS
> Sent: Saturday, 1 February 2003 10:59 PM
> To: 'Nikolaos I. Ioakimidis'; James Amundson
> Cc: maxima mailing list
> Subject: RE: [Maxima] New release candidate with windows installer available
>
>
> > -----Original Message-----
> > From: Nikolaos I. Ioakimidis [mailto:ioakimidis at otenet]
> > Sent: Saturday, 1 February 2003 3:15 AM
> > To: James Amundson
> > Cc: maxima mailing list; Nikolaos I. Ioakimidis
> > Subject: Re: [Maxima] New release candidate with windows installer available
>
>
> [...]
>
> > (ii) In the tests of Maxima there has been an error in rtestode.mac
> > in Problem 43 there in the command
> >
> > DESOLVE([EQN1, EQN2], [f(x), G(x)])
> >
> > The error has been that "x+2 contains more than one independent
> > variable. . . . ". Perhaps this Problem can be omitted or corrected
> > before the final release of 5.9.0. (I do not know whether this error
> > is simply due to my own previous commands.)
>
>
> I see this too, on win2k. It is due to a an interaction with the compile
> test in rtest15.mac, and the fact that kill(all) doesn't. The following
> patch to rename f to something more obscure is another work around.
>
> $ diff -u rtest15.mac.orig rtest15.mac
> --- rtest15.mac.orig 2003-02-01 22:48:46.000000000 +1100
> +++ rtest15.mac 2003-02-01 22:56:43.000000000 +1100
> @@ -94,21 +94,22 @@
> sqrt(3)*sin(2*a)+cos(2*a)-1;
>
> /* compile() will fail with gcl if gcc not installed */
> -f(x):=x+2;
> -f(x):=x+2;
> -f(2);
> +fcompile(x):=x+2;
> +fcompile(x):=x+2;
> +fcompile(2);
> 4;
> -compile(f);
> -[f];
> -f(2);
> +compile(fcompile);
> +[fcompile];
> +fcompile(2);
> 4;
> -kill(f);
> +kill(fcompile);
> done;
> /* This should kill f, but doesn't which upsets subsequent tests
> - Redefining it then killing it does the right thing */
> -f(x):=x+3;
> -f(x):=x+3;
> -kill(f);
> + Redefining it then killing it does the right thing.
> + Sometimes even this is not enough */
> +fcompile(x):=x+3;
> +fcompile(x):=x+3;
> +kill(fcompile);
> done;
>
> /* Trignometric and hyperbolic functions of complex arguments */
--
James Amundson <amundson@fnal.gov>