- From: Peter Rapčan <address@hidden>
- To: texmacs-users <address@hidden>
- Subject: [TeXmacs] Mathematica plugin on OS X
- Date: Wed, 29 Jun 2016 02:45:49 +0200
Anyone?
>
On 28 Jun 2016, at 04:14, Peter Rapčan <address@hidden> wrote:
>
>
Hello everybody,
>
>
>
I tried to get the Mathematica plugin to work on OS X 10.11.5, TeXmacs
>
1.99.4, with Mathematica 10.0.0.0.
>
>
>
First of all, I copied the tm_mathematica.c from Tian-Min Yan to the
>
/Applications/TeXmacs.app/Contents/Resources/share/TeXmacs/plugins/mathematica/src.lazy/
>
directory.
>
>
Then I performed two changes to the file:
>
- replaced all occurences of MLDisownString by MLReleaseString
>
- replaced all occurences ofMLDisownSymbol by MLReleaseSymbol
>
(According to the Wolfram documentation, as of Mathematica 6.0 the former
>
functions have been superseded by the latter functions. I am not sure from
>
which version of Mathematica on, the old functions cannot be used; in any
>
case I could not compile the tm_mathematica.c with the libMLi3.a choice
>
without these changes in the case of Mathematica 10.0.0.0). I suppose
>
these changes need to be done also if one wanted to use the stock
>
tm_mathematica.c provided in a TeXmacs installation.
>
>
The adapted tm_mathematica.c file is attached.
>
>
>
Next, I used the script provided by Singh Madhusudan and made some changes
>
to make it work. The changes I had to make are the following:
>
- change the Mathlink_Path variable (Mathematica version 9 or greater
>
contains the architecture specification [in my case MacOSX-x86-64] in the
>
path to the directory where Mathlink resides).
>
- change the /usr/lib/ to /usr/local/lib/ since from OS X 10.11 on, the
>
System Integrity Protection is enabled, forbidding to write to the
>
/usr/lib/ directory irrespective of administrator rights.
>
- change the compiler commant to use g++ instead of gcc and use the oprion
>
-l$lib_option -stdlib=libstdc++ instead of the -l$lib_option -lstdc++
>
>
With these changes, running the script compiled the tm_mathematica.c just
>
fine, with a single warning “tm_mathematica.c:544:46: warning: format
>
specifies type 'int' but the argument has type 'size_t' (aka 'unsigned
>
long')
>
[-Wformat]
>
printf("\2prompt#\\red In[%1d]:= {}\5\5",InNum++);”
>
>
I attach the working script as “tmMMAscript".
>
>
>
Next, as TeXmacs did not recognize Mathematica as available in the list of
>
supported sessions, I created a wrapper “math” command that runs the
>
MathKernel and placed in into /usr/local/bin/. The wrapper is attached.
>
(note that creating a symlink to MathKernel does not work). After doing
>
this, TeXmacs offers the Mathematica session in its list of supported
>
sessions.
>
>
>
Upon including a Mathematica session, I was prompted whether I allow
>
tm_mathematica.bin to accept incoming connections, from which I deduce the
>
MathLink is working… well… almost. Unfortunatelly, the session does not
>
return results of computations; instead it shows a “busy…” message (see the
>
attached screenshot).
>
<Screen Shot 2016-06-28 at 03.43.48.png>
>
>
I looked at the tm_mathematica file provided by TeXmacs, and tried to tweak
>
it (I think the paths are based on some old mathematica version, so I
>
changed the relevant command to
>
>
export MATHLINK_PATH="$MATH3/CompilerAdditions"
>
>
or
>
>
export MATHLINK_PATH="$MATH3/CompilerAdditions/AlternativeLibraries"
>
(According to the readme file provided in the AlternativeLibraries
>
directory: “This AlternativeLibraries directory contains a versions of the
>
MathLink
>
libraries compiled with -stdlib=libc++ compiler flags. These libraries
>
exist to link programs that need compatibility with Apple's newer libc++
>
C++ library.”
>
Since I compiled with the -stdlib=libstdc++ option the second choice should
>
be the correct one).
>
>
In any case, none of the changes I tried to make to the tm_mathematica file
>
helped to make the plugin work, hence I am stuck with the busy message. Any
>
help to resolve the issue would be greatly appreciated.
>
>
>
Cheers,
>
-Peter.
>
<tmMMAscript><tm_mathematica.c><math>
>
Attachment:
tmMMAscript
Description: Binary data
Attachment:
tm_mathematica.c
Description: Binary data
Attachment:
math
Description: Binary data
>
>
>
> On 31 Oct 2012, at 11:35, Tian-Min Yan <address@hidden> wrote:
>
>
>
> Hi all,
>
>
>
> Now I know how to output PS/EPS graphics. According to the manual
>
> section "Interfering TeXmacs with other programs", I simply put
>
>
>
> fputs("\2ps:", stdout);
>
> fflush(stdout);
>
> system("cat ~/tmp.eps");
>
> fputs("\5{}{}\n\n", stdout);
>
>
>
> into the code (see the attachment), now the EPS figure shows up. Can we
>
> adjust the size and the position of the figure within TeXmacs?
>
>
>
> Besides, I am wondering if we can display a PNG file, since those
>
> rasterized formats have significantly smaller size and the program runs
>
> faster. We should be able to choose between different formats to meet
>
> different purposes.
>
>
>
> One more question, can anybody who is familiar with Mathematica figure
>
> out why "Export["./tmp.eps", expr]" sometimes outputs figures in the
>
> wrong position, as is shown in the attachment where the main part is not
>
> at the center? In contrast, PNG file does not have this problem.
>
>
>
> Best,
>
> Tian-Min
>
>
>
> On Tue, 2012-10-30 at 19:01 +0100, address@hidden
>
> wrote:
>
>> Hi Tian-Min,
>
>>
>
>> The plugin worked perfectly for graphics in old times when Mathematica
>
>> produced pure postscript graphics (this was in versions <=5).
>
>> If you are happy with the old-style Mathematica graphics, in your
>
>> mathematica session simply evaluate : Get["Version5`Graphics`"]
>
>> and then the plugin will recognize the ps graphics and show them in
>
>> TeXmacs (but only for old -or unchanged- graphics functions, old options
>
>> etc.)
>
>>
>
>> It would be nice to benefit from the new mathematica graphics, but that
>
>> would require someone to volunteer for improving the plugin in that area.
>
>>
>
>> Best,
>
>> Philippe
>
>>
>
>>
>
>> Tian-Min Yan - address@hidden wrote:
>
>>> Hi all,
>
>>>
>
>>> I am using Mathematica 8. The Mathematica plugin in TeXmacs works
>
>>> perfectly with a single expression if it does not contain graphical
>
>>> elements. But if we use functions involving plots, the output is
>
>>> problematic. Has anybody figured out the implementation of embedded
>
>>> figures with the Mathematica plugin?
>
>>>
>
>>> Best,
>
>>> Tian-Min
>
>>>
>
>>>
>
>>>
>
>>>
>
>>
>
>
>
>
>
> <texmacs_wrong_position.png><tm_mathematica.c>
>
>
_______________________________________________
>
Texmacs-dev mailing list
>
address@hidden
>
https://lists.gnu.org/mailman/listinfo/texmacs-dev
- [TeXmacs] Mathematica plugin on OS X, Peter Rapčan, 06/28/2016
- [TeXmacs] Mathematica plugin on OS X, Peter Rapčan, 06/29/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Madhusudan Singh, 06/29/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Peter Rapcan, 06/29/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Peter Rapcan, 06/30/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Madhusudan Singh, 06/30/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Massimiliano Gubinelli, 06/30/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Peter Rapcan, 06/30/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Karl Hegbloom, 06/30/2016
- Message not available
- Re: [TeXmacs] Mathematica plugin on OS X, Madhusudan Singh, 06/30/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Massimiliano Gubinelli, 06/30/2016
- Re: [TeXmacs] Mathematica plugin on OS X, Peter Rapčan, 06/30/2016
Archive powered by MHonArc 2.6.19.