giac and javascript
Modérateur : xcasadmin
giac and javascript
Experimental support for giac under javascript for linux 32 and 64 bits:
http://www-fourier.ujf-grenoble.fr/~par ... inux32.tgz
http://www-fourier.ujf-grenoble.fr/~par ... inux64.tgz
Running javscript programs with giac CAS support under linux:
1/ Install giac-1.1: add the line
deb http://www-fourier.ujf-grenoble.fr/~parisse/debian/ testing main
in the file /etc/apt/sources.list. Then run
sudo apt-get update
Now you can install or upgrade by running
sudo apt-get install giac
2/ Install webkit
sudo apt-get install libwebkit-dev
3/ Copy libgiacjs.so in /usr/lib and run sudo ldconfig or run
export LD_LIBRARY_PATH=.
4/ Run
./javascript -l giacjs giacjs.js
(replace giacjs.js with your javascript)
If it does not work, run ldd javascript and make a link in /usr/lib like this
cd /usr/lib ; sudo ln -s libwebkitgtk-1.0.so.0 libwebkit-1.0.so.2
For details how to make the interface, have a look at giacjs.i
http://www-fourier.ujf-grenoble.fr/~par ... inux32.tgz
http://www-fourier.ujf-grenoble.fr/~par ... inux64.tgz
Running javscript programs with giac CAS support under linux:
1/ Install giac-1.1: add the line
deb http://www-fourier.ujf-grenoble.fr/~parisse/debian/ testing main
in the file /etc/apt/sources.list. Then run
sudo apt-get update
Now you can install or upgrade by running
sudo apt-get install giac
2/ Install webkit
sudo apt-get install libwebkit-dev
3/ Copy libgiacjs.so in /usr/lib and run sudo ldconfig or run
export LD_LIBRARY_PATH=.
4/ Run
./javascript -l giacjs giacjs.js
(replace giacjs.js with your javascript)
If it does not work, run ldd javascript and make a link in /usr/lib like this
cd /usr/lib ; sudo ln -s libwebkitgtk-1.0.so.0 libwebkit-1.0.so.2
For details how to make the interface, have a look at giacjs.i
Re: giac and javascript
Another tentative using emcc
https://github.com/kripken/emscripten/wiki
The source here http://www-fourier.ujf-grenoble.fr/~par ... emgiac.tgz compiles but does not link (memory error, seems to happen once 2G of mem are requested).
https://github.com/kripken/emscripten/wiki
The source here http://www-fourier.ujf-grenoble.fr/~par ... emgiac.tgz compiles but does not link (memory error, seems to happen once 2G of mem are requested).
Re: giac and javascript
Now working!
You can check an example of test here
http://www-fourier.ujf-grenoble.fr/~parisse/test.html
You can check an example of test here
http://www-fourier.ujf-grenoble.fr/~parisse/test.html
Re: giac and javascript
Updated. You can now write a webpage including the javascript CAS code from a separate file (this is the case for test.html). The script is 6M, must still try to compress it.
Re: giac and javascript
Now available in compressed form.
http://www-fourier.ujf-grenoble.fr/~parisse/zxcas.html
It requires two javascript files: decompress.js and giac.js.compress. Takes approx 1.5M to download and about 30s to decompress. After that you can save a copy and run it without Internet connection.
http://www-fourier.ujf-grenoble.fr/~parisse/zxcas.html
It requires two javascript files: decompress.js and giac.js.compress. Takes approx 1.5M to download and about 30s to decompress. After that you can save a copy and run it without Internet connection.
Re: giac and javascript
Bonjour,parisse a écrit :Now working!
You can check an example of test here
http://www-fourier.ujf-grenoble.fr/~parisse/test.html
Est-ce qu'il y a une petite doc pour voir comment s'en servir ?
Je cherche à avoir un retour de giac en latex, comment procéder ?
J'ai voulu faire une adaptation, mais j'ai 0 en réponse pour des calculs simples et un undef pour des trucs complexes.
Merci pour toute piste que vous pourrez me donner.
Cordialement
S. COGEZ
Mon code :
Code : Tout sélectionner
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test de calcul et d'affichage avec MathQuill + giac.js</title>
<link type="text/css" rel="stylesheet" href="css/mathquill.css" />
<script type="text/javascript" src="js/giac.js"></script>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/mathquill.js"></script>
<script type="text/javascript">
caseval = Module.cwrap('_ZN4giac7casevalEPKc', 'string', ['string']);
function afficher(text) {
$('#output').html(text);
};
</script>
</head>
<body>
<canvas id='canvas' width=1 height=1></canvas>
<div>
<form><input type="text" id='formule' />
<input type="button" value="Afficher" onclick="setTimeout(function(){result=caseval($('#formule').val());afficher(result);});" /></form>
</div>
<div id="output"></div>
</body>
</html>
Re: giac and javascript
A vrai dire, il n'y a pas de doc autre que la page minimale que vous avez essaye d'adapter. Est-ce que vous arrivez a faire fonctionner test.html sur votre serveur? Si oui, alors caseval marche, et c'est dans le reste de votre code javascript qu'il y a un probleme.
Pour avoir une sortie latex, il suffit de mettre la commande latex() autour de votre entree, par exemple
latex(x^4-1) renvoie "x^{4}-1" avec test.html.
Pour avoir une sortie latex, il suffit de mettre la commande latex() autour de votre entree, par exemple
latex(x^4-1) renvoie "x^{4}-1" avec test.html.
Re: giac and javascript
Merci pour cette réponse. Mon soucis venait d'un conflit entre jquery et xcas qui utilisent tous deux le $. J'ai donc changé les appels des scripts, puis remplacé mes appels $ (jquery) par des jQuery().parisse a écrit :A vrai dire, il n'y a pas de doc autre que la page minimale que vous avez essaye d'adapter. Est-ce que vous arrivez a faire fonctionner test.html sur votre serveur? Si oui, alors caseval marche, et c'est dans le reste de votre code javascript qu'il y a un probleme.
Pour avoir une sortie latex, il suffit de mettre la commande latex() autour de votre entree, par exemple
latex(x^4-1) renvoie "x^{4}-1" avec test.html.
Cordialement
Code : Tout sélectionner
<link type="text/css" rel="stylesheet" href="css/mathquill.css" />
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="js/mathquill.js"></script>
<script type="text/javascript" src="js/giac.js"></script>
<script type="text/javascript">
caseval = Module.cwrap('_ZN4giac7casevalEPKc', 'string', ['string']);
jQuery(function(){
youpi = function(){
jQuery('#reponse').val(caseval(jQuery('#formule').val()));
}
})
</script>