Opened 4 years ago
Last modified 4 years ago
#25385 new defect
maple interface on cygwin
Reported by: | vdelecroix | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-8.4 |
Component: | interfaces | Keywords: | thursdaysbdx |
Cc: | embray | Merged in: | |
Authors: | Reviewers: | ||
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description (last modified by )
The maple interface should work on cygwin (because Maple command line just works fine inside cygwin). But there are several problems
- the path of the maple executable
cmaple.exe
is not in the PATH (at least on the installation I tried) - the name of the executable is
cmaple.exe
and notmaple
this is currently hardcoded in the variable__maple_command
in the constructor ofsage.interfaces.maple.Maple
- not sure about the right command line arguments on windows...
Change History (7)
comment:1 Changed 4 years ago by
- Description modified (diff)
comment:2 Changed 4 years ago by
- Description modified (diff)
comment:3 follow-up: ↓ 4 Changed 4 years ago by
comment:4 in reply to: ↑ 3 Changed 4 years ago by
I have a real use case with somebody in Bordeaux, but sadly I can not experiment with it in the next two weeks...
Replying to embray:
I don't know how best to test this since I do not have Maple. Though I suppose I could get it. That, or I can just investigate the implementation and guess at what will improve it...
It shouldn't have much to do with the "Cygwin path" which still normally gets inherited from your Windows
PATH
. So for that to work at least you need to have the maple executable on yourPATH
in Windows. In other words, that's something that should be configured in Windows, and not necessarily Sage/Cygwin? (that said we should have an environment variable for controlling that as well).
Hence maple is not in the path... It might just provide the launcher with a proper path to the executable? There is perhaps a register entry for this? Do you know if there is any standard for that kind of things on windows?
From Sage, I hope to solve it with a more configurable maple interface. For example, the user should be able to do something like the following in a Jupyter cell to make it work
import os os.environ['SAGE_MAPLE_COMMAND'] = "/cygwin/c/Program Files/Maple18/bin/cmaple.exe"
For Octave, I did introduce a SAGE_OCTAVE_COMMAND
that had the same purpose. Or alternatively
maple = Maple(command="/cygwin/c/Program Files/Maple18/bin/cmaple.exe")
Of course, this would better be transparent to the user and I might try to implement a
def find_maple()
function...
If anybody has a Windows computer with a Maple installed at Saint-Flour I will experiment further.
(Let me also mention that your cygwin installer ran very smoothly on that computer! Including some successful uses of Cython.)
comment:5 Changed 4 years ago by
Do you know if there is any standard for that kind of things on windows?
Not really. It depends entirely on the program, how it's installed, etc.
I agree it should be possible to explicitly configure a path to any and all executables that Sage relies on for some feature.
comment:6 Changed 4 years ago by
- Description modified (diff)
comment:7 Changed 4 years ago by
- Milestone changed from sage-8.3 to sage-8.4
update milestone 8.3 -> 8.4
I don't know how best to test this since I do not have Maple. Though I suppose I could get it. That, or I can just investigate the implementation and guess at what will improve it...
It shouldn't have much to do with the "Cygwin path" which still normally gets inherited from your Windows
PATH
. So for that to work at least you need to have the maple executable on yourPATH
in Windows. In other words, that's something that should be configured in Windows, and not necessarily Sage/Cygwin? (that said we should have an environment variable for controlling that as well).