Subject: Successful windows build, including xmaxima.exe
From: Billinghurst, David (CRTS)
Date: Mon, 9 Sep 2002 14:43:31 +1000
I have uploaded this to http://www.geocities.com/billingd2002/maxima/
It is split across three files (due to size limitations). Built on
a win2k P3 and installed into c:\Programs\.
It really is work in progress, but I would be interested to see if it
works, or how it fails. Good luck.
-----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