Discussion:
[Axiom-math] TexMacs Windows Axiom<->Maxima incompatible (DLL?)
Herb Martin
2006-01-24 01:22:28 UTC
Permalink
This is NOT a bug report (nor certainly not a complaint),
but merely a preliminary request for info in case this
is an already solved problem:

I cannot run the Axiom Texmacs and the GUI (TexMacs
version of) Maxima at the same time.

Each will run, one at a time.

Most likely is an incompatibility of the DLL(s)
they load.

I have:

axiom-windows-0.1.4.exe
maxima-5.9.2.exe

...which I believe to be the latest RELEASED version
of each.

This is not even a giant problem since each seems to
run fine if it is started FIRST, i.e., one at a time.

This also has no effect on the command line version
of the other program.

I have no idea how hard it would be to get either of
them to use the TexMacs of the other or to find a
way to recompile them to the same (effective) version,
etc....

--
Herb Martin
Page, Bill
2006-01-24 17:42:05 UTC
Permalink
Herb,

If you haven't already, I think you should try sending a
copy of your email to the texmacs developer list:

http://lists.gnu.org/mailman/listinfo/texmacs-dev

You might meet more people there who can answer your
question.

Let us know if the conclusion is a specific library or
other imcompatibility.

Be sure to point out that you are talking about the
Windows version of TeXmacs since Windows is a "secondary"
platform for TeXmacs and it might behavee quite differently
in linux.

Regards,
Bill Page.
Post by Herb Martin
...
I cannot run the Axiom Texmacs and the GUI (TexMacs
version of) Maxima at the same time.
Each will run, one at a time.
Most likely is an incompatibility of the DLL(s)
they load.
axiom-windows-0.1.4.exe
maxima-5.9.2.exe
...
Herb Martin
2006-01-25 06:25:08 UTC
Permalink
Post by Page, Bill
Herb,
If you haven't already, I think you should try sending a
http://lists.gnu.org/mailman/listinfo/texmacs-dev
You might meet more people there who can answer your
question.
Let us know if the conclusion is a specific library or
other imcompatibility.
Ok, thanks.

Before I do that I would like to understand better
what is supposed to be working (on Win32 without an
explicit CygWin install.)

I have installed Axiom and understand there is a
TexMacs included: tm_axiom.exe

This runs if started first. But I don't seem to
have (or perhaps understand) any connection between
Axiom and TexMacs.

Also when using draw commands (from the Axiom docs)
from within the Axiom command line I get socket
errors which implies that some program should be
setup perhaps as a "server" etc.

(41) -> draw(f, 0..4)
Graph data being transmitted to the viewport manager...
SOCK-SEND-INT is invalid as a function.

protected-symbol-warn called with (NIL)
(41) ->

Maybe there is a doc I missed for installing Axiom
and getting it to work with (the included) TexMacs
or for creating Graphics....

--
Herb
root
2006-01-25 07:38:47 UTC
Permalink
Herb,

The message you are getting

SOCK-SEND-INT is invalid as a function.

means that the axiom C library is not linked into the AXIOMsys image.

'axiom' is actually a shell script. it invokes 'sman' (superman)
which starts several processes hyperdoc, the browser ; clef, the
command line editor function ; AXIOMsys, the actual axiom interpreter ;
and viewman which handles 2D and 3D graphics.

sman communicates over sockets to these processes and the axiom
interpreter uses SOCK-SEND-INT to send integers. it appears that
your AXIOMsys does not have the C routines linked in. this is odd
as the second step of the build process is to compile the C code
and the third step is to build GCL and link it into the image.

i'm not sure what the details are of the texmacs connection
but if it starts AXIOMsys directly then there won't be an sman
process running so graphics will not work. the easiest test for
that case is to see if the axiom browser starts when you start
axiom from texmacs. if not then the texmacs interface is probably
only running the AXIOMsys image.

t
David MENTRE
2006-01-25 10:16:12 UTC
Permalink
Hello Tim,
Post by root
i'm not sure what the details are of the texmacs connection
but if it starts AXIOMsys directly then there won't be an sman
process running so graphics will not work. the easiest test for
that case is to see if the axiom browser starts when you start
axiom from texmacs. if not then the texmacs interface is probably
only running the AXIOMsys image.
If the TeXmacs plugin for Axiom has been kept in the same state as I
left it, this plugin starts AXIOMsys directly.

Best wishes,
d.
Herb Martin
2006-01-25 14:09:29 UTC
Permalink
Hello Tim,
Post by root
i'm not sure what the details are of the texmacs connection
but if it starts AXIOMsys directly then there won't be an sman
process running so graphics will not work. the easiest test for
that case is to see if the axiom browser starts when you start
axiom from texmacs. if not then the texmacs interface is probably
only running the AXIOMsys image.
If the TeXmacs plugin for Axiom has been kept in the same state as I
left it, this plugin starts AXIOMsys directly.
Is that for the Windows version of Axiom?

When I try to run tm_axiom (which I thought
was runable before) it gives this:

E:\dev\axiom\mnt\windows\bin>tm_axiom
☻verbatim:☻channel:prompt♣☻latex:\red$\rightarrow$\ ♣♣☻verbatim:
☻channel:prompt♣☻latex:\red$\rightarrow$\ ♣♣☻verbatim:<ENTER>
☻channel:prompt♣☻latex:\red$\rightarrow$\ ♣♣☻verbatim:^C

(I added <ENTER> to show that I pressed Enter there.)

--
Herb
David MENTRE
2006-01-25 15:55:16 UTC
Permalink
Hello,
Post by Herb Martin
Is that for the Windows version of Axiom?
I've never tested Axiom and TeXmacs under windows. I think Bill Page had.
Post by Herb Martin
When I try to run tm_axiom (which I thought
tm_axiom plugin should be started transparently by TeXmacs, when you
start an Axiom session from TeXmacs menu (and if TeXmacs detects you
have Axiom installed, which might be the tricky thing that blocks
you).

Sorry but I can't help you much more, I've haven't hacked on Axiom
neither TeXmacs code for years.

Best wishes,
d.
Herb Martin
2006-01-25 13:43:47 UTC
Permalink
Post by root
Herb,
The message you are getting
SOCK-SEND-INT is invalid as a function.
means that the axiom C library is not linked into the AXIOMsys image.
'axiom' is actually a shell script. it invokes 'sman' (superman)
which starts several processes hyperdoc, the browser ; clef, the
command line editor function ; AXIOMsys, the actual axiom
interpreter ;
and viewman which handles 2D and 3D graphics.
Thanks for trying to help me -- I appreciate it --
this probably doesn't apply to me though, since I am
running on a Windows box (and running without an
explicit install of Cygwin) so "shell scripts"
don't run here.

I downloaded and installed this:

axiom-windows-0.1.4.exe

There doesn't seem to be any equivalent batch file
either. The installation program installed shortcuts
that point directly to axiomsys and I have to start
TexMacs (tm_axiom.exe) separately.

There doesn't even seem to be any sman.exe included.

[No bat or cmd files in my Axiom directory tree;
there are a bunch of bat files in my separately
downloaded (and apparently incompatible) WinTexMacs
directory, but they all seem to be within the ghostscript
subtree.]
Post by root
sman communicates over sockets to these processes and the axiom
interpreter uses SOCK-SEND-INT to send integers. it appears that
your AXIOMsys does not have the C routines linked in. this is odd
as the second step of the build process is to compile the C code
and the third step is to build GCL and link it into the image.
This makes sense and likely something similar was intended
for the pre-compiled Windows version (i.e., I didn't compile
this locally, it was downloaded as-is.)
Post by root
i'm not sure what the details are of the texmacs connection
but if it starts AXIOMsys directly then there won't be an sman
process running so graphics will not work. the easiest test for
that case is to see if the axiom browser starts when you start
axiom from texmacs. if not then the texmacs interface is probably
only running the AXIOMsys image.
Thanks for any light you can shed on this;
or pointers to docs or people who can help
with the Windows (Win32) version of Axiom.

I have no problem with "read the manual" answers
if someone knows the manual in question....<grin>

--
Herb Martin
Bill Page
2006-01-25 15:26:53 UTC
Permalink
... I would like to understand better what is supposed to
be working (on Win32 without anexplicit CygWin install.)
I have installed Axiom and understand there is a
TexMacs included: tm_axiom.exe
This runs if started first.
?? What runs? You mean tm_axiom.exe? That is not supposed
to be run by you. It is internal to TeXmacs. tm_axiom is
the process that interfaces between TeXmacs and Axiom. It
handles all communications in both directions.
But I don't seem to have (or perhaps understand) any
connection between Axiom and TexMacs.
If you have tm_axiom.exe installed in the right location
(See: http://wiki.axiom-developer.org/TeXmacs ), then inside
TeXmacs you should be able to choose Axiom from the Session
menu. When you do this, TeXmacs starts tm_axiom.exe and in
turn tm_axiom.exe starts AXIOMsys (the main Axiom process).
(All this is normally invisible to you, as a user.)

The Axiom commands that you enter into TeXmacs after the
red -> prompt are sent via tm_axiom.exe to AXIOMsys. Axiom
calculates a result and generates a LaTeX expression as
output. This is expression is sent back to tm_axiom which
folds the LaTeX output to conform to the page size and then
tm_axiom.exe sends it TeXmacs. TeXmacs converts the LaTeX
expressions to it's internal form and displays the result
inside the document.
Also when using draw commands (from the Axiom docs)
from within the Axiom command line I get socket
errors which implies that some program should be
setup perhaps as a "server" etc.
(41) -> draw(f, 0..4)
Graph data being transmitted to the viewport manager...
SOCK-SEND-INT is invalid as a function.
protected-symbol-warn called with (NIL)
(41) ->
Maybe there is a doc I missed for installing Axiom
and getting it to work with (the included) TexMacs
or for creating Graphics....
Yes. :) The Axiom Wiki web site has a lot of useful information
(although admittedly of uneven quality and some a little out of
date already ... :(

http://wiki.axiom-developer.org/55GraphicsDoesNotWorkOnWindows
http://wiki.axiom-developer.org/AxiomGraphics
http://wiki.axiom-developer.org/TeXmacs

Unfortunately Axiom graphics is not yet available on Windows.

Regards,
Bill Page.
Bill Page
2006-01-25 15:37:15 UTC
Permalink
Post by root
The message you are getting
SOCK-SEND-INT is invalid as a function.
means that the axiom C library is not linked into the AXIOMsys
image.
Yes that is the situation in the current Windows version of Axiom.
This functionality had to be removed from the Windows version
because the Windows support for sockets is quite different than
on linux/unix.
Post by root
'axiom' is actually a shell script. it invokes 'sman' (superman)
which starts several processes hyperdoc, the browser ; clef, the
command line editor function ; AXIOMsys, the actual axiom
interpreter ; and viewman which handles 2D and 3D graphics.
Currently only AXIOMsys runs on Windows although recently Tim
Daly did manage to get hyperdoc running in standalone mode in
Windows (this is still very experimental).
Post by root
sman communicates over sockets to these processes and the axiom
interpreter uses SOCK-SEND-INT to send integers. it appears that
your AXIOMsys does not have the C routines linked in. this is odd
as the second step of the build process is to compile the C code
and the third step is to build GCL and link it into the image.
No. This does not currently apply to Windows.
Post by root
i'm not sure what the details are of the texmacs connection
but if it starts AXIOMsys directly then there won't be an sman
process running so graphics will not work. the easiest test for
that case is to see if the axiom browser starts when you start
axiom from texmacs. if not then the texmacs interface is probably
only running the AXIOMsys image.
Normally the texmacs interface only runs AXIOMsys since the only
Axiom output that can be handled by the interface is the LaTeX
output from AXIOMsys (older versions used to run the axiom shell
script).

On linux some people have modified the texmacs interface to call
the axiom shell script. This allows you to enter draw commands
in TeXmacs, however the graphical output only appears in a separate
Axiom graphics windows. But from there, the output can be saved as
a postscript file and manually imported into TeXmacs. Of course
this does not current work in the Windows version of Axiom.

Regards,
Bill Page.
Vanuxem Grégory
2006-01-25 16:01:57 UTC
Permalink
Hi
-----Message d'origine-----
Herb Martin
Envoyé : mercredi 25 janvier 2006 15:09
Objet : RE: [Axiom-math] TexMacs Windows Axiom<->Maxima incompatible
(DLL?)
Hello Tim,
Post by root
i'm not sure what the details are of the texmacs connection
but if it starts AXIOMsys directly then there won't be an sman
process running so graphics will not work. the easiest test for
that case is to see if the axiom browser starts when you start
axiom from texmacs. if not then the texmacs interface is probably
only running the AXIOMsys image.
If the TeXmacs plugin for Axiom has been kept in the same state as I
left it, this plugin starts AXIOMsys directly.
Is that for the Windows version of Axiom?
It's for the linux version (graphic and hyperdoc
are not available on windows).


Cheers,

Greg
When I try to run tm_axiom (which I thought
E:\dev\axiom\mnt\windows\bin>tm_axiom
☻channel:prompt♣☻latex:\red$\rightarrow$\ ♣♣☻verbatim:<ENTER>
☻channel:prompt♣☻latex:\red$\rightarrow$\ ♣♣☻verbatim:^C
(I added <ENTER> to show that I pressed Enter there.)
--
Herb
_______________________________________________
Axiom-math mailing list
http://lists.nongnu.org/mailman/listinfo/axiom-math
Bill Page
2006-01-25 16:04:50 UTC
Permalink
Post by Herb Martin
If the TeXmacs plugin for Axiom has been kept in the same
state as I left it, this plugin starts AXIOMsys directly.
?? The TeXmacs axiom plugin (tm_axiom etc.) was originally written
by Andrey G. Grozin.
Post by Herb Martin
Is that for the Windows version of Axiom?
Yes. There is a modified version to tm_axiom for Windows based
directly on Andrey's original program but using a more efficient
(for Windows) threaded programming technique.
Post by Herb Martin
When I try to run tm_axiom (which I thought
E:\dev\axiom\mnt\windows\bin>tm_axiom
☻channel:prompt♣☻latex:\red$\rightarrow$\ ♣♣☻verbatim:<ENTER>
☻channel:prompt♣☻latex:\red$\rightarrow$\ ♣♣☻verbatim:^C
(I added <ENTER> to show that I pressed Enter there.)
What you are seeing is the internal communication protocol between
tm_axiom.exe and TeXmacs (complete with embedded binary codes).
This is not a program that would normally be run by the user.

Regards,
Bill Page.
David MENTRE
2006-01-25 18:13:27 UTC
Permalink
Hello Bill,
Post by Bill Page
?? The TeXmacs axiom plugin (tm_axiom etc.) was originally written
by Andrey G. Grozin.
Sure. I just modified it at one point to make it work with Axiom (and I
particularly remember modifying it, relatively to the axiom/AXIOMsys
difference). I Don't know which plugin code have been integrated in
TeXmacs and/or Axiom though. :-)

I did not want to steal Andrey's credits or yours.

Best wishes and sorry for the misunderstanding,
d.
--
David MENTRE <***@gmail.com> -- http://www.nongnu.org/axiom/
Bill Page
2006-01-25 17:01:48 UTC
Permalink
Post by Herb Martin
...
axiom-windows-0.1.4.exe
There doesn't seem to be any equivalent batch file
either.
?? Batch file equivalent to what?
Post by Herb Martin
The installation program installed shortcuts that point
directly to axiomsys and I have to start TexMacs
(tm_axiom.exe) separately.
tm_axiom.exe is **not** TeXmacs! You need to install
TeXmacs separately. See:

http://www.texmacs.org/tmweb/download/windows.en.html

There is more information about the TeXmacs interface for
Axiom and specifically Axiom on Windows here:

http://wiki.axiom-developer.org/TeXmacs
Post by Herb Martin
There doesn't even seem to be any sman.exe included.
[No bat or cmd files in my Axiom directory tree;
there are a bunch of bat files in my separately
downloaded (and apparently incompatible) WinTexMacs
directory, but they all seem to be within the ghostscript
subtree.]
Why do you say they are "apparently incompatible"? WinTeXmacs
should work wint Axiom for Windows "right out of the box".
Post by Herb Martin
Post by root
sman communicates over sockets to these processes and the
axiom interpreter uses SOCK-SEND-INT to send integers. it
appears that your AXIOMsys does not have the C routines
linked in. this is odd as the second step of the build process
is to compile the C code and the third step is to build GCL
and link it into the image.
No, this is not done at all in the current Windows build of Axiom.
Post by Herb Martin
This makes sense and likely something similar was intended
for the pre-compiled Windows version (i.e., I didn't compile
this locally, it was downloaded as-is.)
No. Niether the pre-compiled nor the current Windows sources
for Axiom support sockets via the old Axiom-specific code.
There is some (experimental) support for native GCL socket
support, but this is not used by Axiom.
Post by Herb Martin
...
I have no problem with "read the manual" answers
if someone knows the manual in question....<grin>
Well as I said previously, the Axiom website

http://wiki.axiom-developer.org

has a lot of "answers". If you find places where it is deficient,
please feel free to add additional information - this is a
community-run wiki (editable website).

Regards,
Bill Page.
Bill Page
2006-01-25 18:25:38 UTC
Permalink
Post by David MENTRE
Post by Bill Page
?? The TeXmacs axiom plugin (tm_axiom etc.) was originally
written by Andrey G. Grozin.
Sure. I just modified it at one point to make it work with
Axiom (and I particularly remember modifying it, relatively to
the axiom/AXIOMsys difference).
Yes. I recall that. The issue was the running 'axiom' starts
sman which starts AXIOMsys (which generates one 1) -> prompt)
and then asks Axiom to start a new frame (which generates another
1) -> prompt). The original Axiom plugin of TeXmacs expected
this behaviour. When we changed to just calling AXIOMsys (which
is all that is available on Windows), then the tm_axiom interface
program had to change.
Post by David MENTRE
I Don't know which plugin code have been integrated in TeXmacs
and/or Axiom though. :-)
I think your modified version is used with the Linux version of
TeXmacs, which the new "threaded" version of tm_axiom is used
on Windows.
Post by David MENTRE
I did not want to steal Andrey's credits or yours.
Best wishes and sorry for the misunderstanding,
No problem! :) Thanks for the clarification.

Regards,
Bill Page.
Herb Martin
2006-01-25 19:49:54 UTC
Permalink
Post by Bill Page
Post by Herb Martin
The installation program installed shortcuts that point
directly to axiomsys and I have to start TexMacs
(tm_axiom.exe) separately.
tm_axiom.exe is **not** TeXmacs! You need to install
http://www.texmacs.org/tmweb/download/windows.en.html
Ok, I was confused about this part, but I had already
installed TexMacs according to that page.

wintexmacs-1.0.5.exe

This page seemed to indicate this...

http://wiki.axiom-developer.org/TeXmacs

...but on re-reading it, now it seems to say that
tm_axiom is:

"A new version of the Axiom interface program
tm_axiom that was written especially for Windows
is included in the latest Axiom for Windows
installation program. This will be used
automatically by the native windows version of
TeXmacs."

I took "interface program" to mean that which
will display the output (i.e., what TexMacs
presumably does) and apparently (now) it really
means "the program that TexMacs talks to..."

Or else there is NO connection between TexMacs
and Axiom (except through manual transfer)?????

On an old message there was a statement that said
that the drawing did NOT work on Windows -- is this
still true? NO drawing?

This page indicates that TexMacs can use Axiom and
a variety of other programs as "plug-ins":
http://www.texmacs.org/tmweb/plugins/cas.en.html#axiom

Likely I haven't done whatever is necessary to hook up
TexMacs to Axiom -- or else I misunstand what they
do together.

In general, I was expecting something like the Windows
version of Maxima-TeXmacs. It this completely wrong?
Post by Bill Page
There is more information about the TeXmacs interface for
http://wiki.axiom-developer.org/TeXmacs
Post by Herb Martin
There doesn't even seem to be any sman.exe included.
[No bat or cmd files in my Axiom directory tree;
there are a bunch of bat files in my separately
downloaded (and apparently incompatible) WinTexMacs
directory, but they all seem to be within the ghostscript
subtree.]
Why do you say they are "apparently incompatible"? WinTeXmacs
should work wint Axiom for Windows "right out of the box".
I think it is (only) the TexMacs stand-alone
load that is incompatible with the Maxima built-in
TexMacs (likely one of the required DLLs is using
the same name but a different version.)
Post by Bill Page
Well as I said previously, the Axiom website
http://wiki.axiom-developer.org
has a lot of "answers". If you find places where it is deficient,
please feel free to add additional information - this is a
community-run wiki (editable website).
Regards,
Bill Page.
_______________________________________________
Axiom-math mailing list
http://lists.nongnu.org/mailman/listinfo/axiom-math
Bill Page
2006-01-26 00:58:46 UTC
Permalink
Post by Bill Page
...
http://wiki.axiom-developer.org/TeXmacs
"A new version of the Axiom interface program
tm_axiom that was written especially for Windows
is included in the latest Axiom for Windows
installation program. This will be used
automatically by the native windows version of
TeXmacs."
I took "interface program" to mean that which
will display the output (i.e., what TexMacs
presumably does) and apparently (now) it really
means "the program that TexMacs talks to..."
Yes, that is correct. The information flow looks like
this:

TeXmacs <---> tm_axiom <---> AXIOMsys

tm_axiom is a two-way translator (interface) that
converts to/from TeXmacs compatible input/output
from/to Axiom. When you start an Axiom session in
TeXmacs, TeXmacs runs tm_axiom. tm_axiom in turn
runs AXIOMsys. These three processes are running
on your system when you interact with Axiom via
TeXmacs.

Could you suggest a revision to the text on the above
web page that would make this more clear?
Post by Bill Page
Or else there is NO connection between TexMacs
and Axiom (except through manual transfer)?????
The connection is automatic but slightly indirect.
Post by Bill Page
On an old message there was a statement that said
that the drawing did NOT work on Windows -- is this
still true? NO drawing?
NO drawing on Windows :(

The problem is that Axiom's graphics package depends on
the Xwindows environment which is not available on native
Windows.

Xwindows is available under Cygwin on Windows and in principle
the graphics and hyperdoc parts of Axiom could run in this
environment but right now we do not have an official build
for Cygwin. Further, the version of Axiom for Windows does
not have the same socket functionality as the version for
Linux (due to limitations in the underlying lisp - GCL).

But some progress has been made recently. Tim Daly was able
to compile (using Cygwin) and run a stand alone version of
hyperdoc (in native windows with a native windows Xserver).
This is still very experimental but in principle would also
allow Axiom graphics to run in native mode Windows (i.e.
without installing Cygwin) once the socket issue is resolved.
Post by Bill Page
This page indicates that TexMacs can use Axiom and
http://www.texmacs.org/tmweb/plugins/cas.en.html#axiom
Likely I haven't done whatever is necessary to hook up
TexMacs to Axiom -- or else I misunstand what they
do together.
In general, I was expecting something like the Windows
version of Maxima-TeXmacs. It this completely wrong?
This is exactly what you should get if everything is
installed properly. On Windows everything works best if
you install Axiom first and WinTeXmacs second - that way
WinTeXmacs will "see" Axiom and setup the necessary
configuration.

But the Axiom plug-in for TeXmacs is not quite as
sophisticated as the most recent version of the plug-in
for Maxima. For example, it is not possible to use "2-d"
math input for Axiom, you are limited to entering
traditional Axiom commands.
Post by Bill Page
Post by Bill Page
Why do you say they are "apparently incompatible"?
WinTeXmacs should work with Axiom for Windows "right
out of the box".
I think it is (only) the TexMacs stand-alone
load that is incompatible with the Maxima built-in
TexMacs (likely one of the required DLLs is using
the same name but a different version.)
Could you please describe this again very carefully, i.e.
step-by-step? I do not understand what you mean by:
"Maxima built-in TexMacs". Maxima is not built-in to
TeXmacs. It works that same way as Axiom and TeXmacs
except the most recent version of Maxima no longer needs
an intermediate interface program like tm_axiom.

Regards,
Bill Page.

Loading...