Successful windows build, including xmaxima.exe



Hi Dave.


> I have uploaded this to http://www.geocities.com/billingd2002/maxima/

Thanks.

> It is split across three files (due to size limitations).  Built on
> a win2k P3 and installed into c:\Programs\.

Out of interest I tried a beta version of the 7-zip program
(http://www.7-zip.org/) on maximum "7z" format compression - took ages but
total size for the executable was 6.6 megs instead of 7.8 megs.

> It really is work in progress, but I would be interested to see if it
> works, or how it fails. Good luck.

It unzipped perfectly, and after double clicking on "xmaxima.exe" I tried
the examples and the documentation from the browser without problems.

I copied the maxima directory to a different location ("g:/maxima-5.9") and
did the same - no problems.

Extracted the 7-zip exe into "g:/junk/maxima-5.9" and got the same positive
results.

As a final test I tried "netmath" but it complained about not finding a
channel named "sock172".

Cheers

Mike Thomas

>
> -----Original Message-----
> From: CRTS
> Sent: Sunday, 8 September 2002 12:39
> To: maxima@www.ma.utexas.edu
> Subject: Successful windows build, including xmaxima.exe
>
>
> I now have a standalone windows build, including xmaxima.exe.
> It is bed time, so this is just a summary.
>
> You need all msys and mingw files as described by Mike Thomas
> recently (29 Aug), then build and install gcl.
>
> Install freewrap5.0 from freewrap.sourceforge.net
>
> 1. make and install maxima using mingw/msys/gcl, as discussed
>    recently.  Assume ./configure --prefix=${prefix}
>
> 2. copy tclwinkill.dll and winkill.exe into ${prefix}/bin.
>    These files are part of gcl, but will be moving to
>    the maxima tree shortly.
>
> 3. copy ${prefix}/bin/xmaxima to xmaxima.tcl
>    patch xmaxima.tcl using hack below (or fix real problem)
>
> 4. Generate xmaxima.exe with command
>    freewrap xmaxima.tcl -e
>
> 5. Get hold of mingw gcc.  You can either:
>    - install mingw and gcc-2.95.3-20011106
>    - use a cut down version of gcc-2.95.3-20011106 installed
>      as a subdirectory of maxima (details later, but not hard)
>    I have both of these working.
>
> 6. Set the path to gcc in a maxima initialization file
>    I appended the following line to
>    ${prefix}/share/maxima/5.9.0rc1/share/maxima-init.lisp
>
>    (setq compiler::*cc* "c:\\programs\\maxima-5.9\\gcc\\bin\\gcc" )
>
> The file xmaxima.exe does all the right things:
>  - passes testsuite
>  - example(), describe(), load() all work
>  - plotting works
>
> There are a few more things that work:
>  - the maxima script runs under msys /bin/sh
>  - xmaxima script runs under msys if you install tcl/tk
>  - maxima.exe runs under a DOS shell using command like
>        maxima.exe -eval (run)
>    and a maxima.bat file could be put together if required
>
> ###########################################################
>
> Here is the nasty hack to xmaxima.tcl.  I suspect that there
> is some problem with [auto_execok $ws_openMath(xmaxima_maxima)]
> but that can wait.
>
> --- xmaxima     2002-09-07 15:39:45.000000000 +1000
> +++ xmaxima.tcl 2002-09-07 21:44:03.000000000 +1000
> @@ -12887,13 +12887,13 @@
>         exit 1
>      }
> -    if { [auto_execok $ws_openMath(xmaxima_maxima)] != "" } {
> -       set ws_openMath(localMaximaServer) "$ws_openMath(xmaxima_maxima)
$maxima_opts -p [file join $ws_openMath(maxima_xmaximadir) server.lisp] -r
\":lisp (progn (user::setup PORT)(values))\" &"
> -    } else {
> -       if { [info exists env(XMAXIMA_MAXIMA)] } {
> -           puts "xmaxima: Error. maxima executable
XMAXIMA_MAXIMA=$env(XMAXIMA_MAXIMA) not found."
> -           exit 1
> -       } else {
> +#    if { [auto_execok $ws_openMath(xmaxima_maxima)] != "" } {
> +#      set ws_openMath(localMaximaServer) "$ws_openMath(xmaxima_maxima)
$maxima_opts -p [file join $ws_openMath(maxima_xmaximadir) server.lisp] -r
\":lisp (pro
> gn (user::setup PORT)(values))\" &"
> +#    } else {
> +#      if { [info exists env(XMAXIMA_MAXIMA)] } {
> +#          puts "xmaxima: Error. maxima executable
XMAXIMA_MAXIMA=$env(XMAXIMA_MAXIMA) not found."
> +#          exit 1
> +#      } else {
>             # A gruesome hack. Normally, we communicate to the maxima
image
>             # through the maxima script, as above. If the maxima script is
not
>             # available, as may happen on windows, directly talk to the
GCL
> @@ -12903,8 +12903,8 @@
>             set env(MAXIMA_INT_INPUT_STRING) \
>                 ":lisp (progn (user::setup PORT)(values));"
>             set ws_openMath(localMaximaServer) "[file join
$ws_openMath(maxima_verpkglibdir) binary-gcl maxima] -eval \"(run)\" -f &"
> -       }
> -    }
> +#      }
> +#    }
> _______________________________________________
> Maxima mailing list
> Maxima@www.math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
> _______________________________________________
> Maxima mailing list
> Maxima@www.math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>