code qui ne compile plus : erreur Ghostscript

Pour toute demande d'aide sur des exemples non finalisés, c'est ici.
Les exemples aboutis et intéressants seront ajoutés aux sous-forums qui suivent.

Règles du forum
Pour toute demande d'aide pour la conception (ou la confirmation d'un code) d'une figure Asymptote, c'est ici.

J'invite ceux qui ont régulièrement des questions à poser à aller dans leur panneau de l'utilisateur pour indiquer dans la signature de leurs messages :

  1. Nom du système d'exploitation (W7 ou Ubuntu 12.04 ou ...)
  2. Version d'Asymptote et éditeur utilisé pour les figures Asymptote
  3. Distribution LaTeX et éditeur utilisé pour les tex.


On va gagner du temps dans les réponses !
maurice
Messages : 262
Enregistré le : jeu. 25 mars 2010, 13:00
Contact :

code qui ne compile plus : erreur Ghostscript

Message non lu par maurice » jeu. 18 juil. 2019, 16:56

Bonjour,

Sans doute un problème déjà évoqué mais je n'ai retrouvé.
Voici un code qui compilait sans problème il y a deux ans mais qui me procure une erreur aujourd'hui et qui d'ailleurs ne passe pas sur le forum.

Code : Tout sélectionner

size(6cm);
defaultpen(fontsize(11pt));
path p1=(-3,0)..(0,1)..(1,0)..(0,-1)..cycle;
path p2=reflect((0,0), (0,1))*p1;

filldraw(p1, lightblue+opacity(.7));
filldraw(p2, lightblue+opacity(.7));
draw(p1^^p2);
// path p=(-3,0)..(0,1)..(1,0)

draw((-3.5,0)..(0,1.5)..(3.5,0)..(0,-1.5)..cycle);

label("$E$", (-3.5,1));
label("$A$", (-2,0));
label("$B$", (2,0));
label("Diagramme de Venn", (0,-2));
l'erreur obtenue est la même que sur le forum.

Code : Tout sélectionner

$ asy -f pdf M1201-1-union.asy
Error: /undefined in .setopacityalpha
Operand stack:
   0.7
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   2046   1   3   %oparray_pop   2045   1   3   %oparray_pop   --nostringval--   2025   1   3   %oparray_pop   1884   1   3   %oparray_pop   --nostringval--   %errorexec_pop   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--
Dictionary stack:
   --dict:967/1684(ro)(G)--   --dict:0/20(G)--   --dict:83/200(L)--   --dict:177/300(L)--   --dict:43/200(L)--
Current allocation mode is local
Current file position is 49657
GPL Ghostscript 9.26: Unrecoverable error, exit code 1
/usr/share/asymptote/plain_shipout.asy: 102.11: runtime: shipout failed
Je n'ai pas suivi les évolutions d'asymptote ces derniers temps...
Ma version est la 2.47 et celle de Ghostscript la 9.26 le tout sous Fedora30.

J'aimerais juste bien comprendre.

Bruno
Doc 3D
Si ça ne marche pas, essayez la version pdf

Fedora 23 -- Asymptote 2.35 -- TeXlive 2013 -- emacs et/ou gedit

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1516
Enregistré le : dim. 7 mars 2010, 14:50

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par GM » jeu. 18 juil. 2019, 17:44

Bonjour,
c'est un message d'erreur de ghostscript
et cela compile effectivement chez moi avec une ancienne version 9.21 de ghostscript, alors que sur le serveur du forum la version doit être plus récente.
On voit dans le changelog d'Asymptote qu'il y a eu des modifications relativement à Ghostscript dans la 2.48 :
viewtopic.php?f=4&p=3104#p3104.
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.82)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
PC n°2 : Ubuntu 20.04LTS - Asymptote(2.67-?? git) + TexLive2020
Mon serveur : Debian Stretch- Asymptote(2.68-16 git) + TexLive2018
Merci de préciser la votre !

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1516
Enregistré le : dim. 7 mars 2010, 14:50

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par GM » jeu. 18 juil. 2019, 17:53

GM a écrit :
jeu. 18 juil. 2019, 17:44
On voit dans le changelog d'Asymptote qu'il y a eu des modifications relativement à Ghostscript dans la 2.48 :
viewtopic.php?f=4&p=3104#p3104.
Mais le serveur du forum est avec Asymptote 2.50 et Ghostscript 9.26 et on a le problème aussi...
... donc la mise à jour d'Asymptote ne va apparemment pas être suffisante.
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.82)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
PC n°2 : Ubuntu 20.04LTS - Asymptote(2.67-?? git) + TexLive2020
Mon serveur : Debian Stretch- Asymptote(2.68-16 git) + TexLive2018
Merci de préciser la votre !

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1516
Enregistré le : dim. 7 mars 2010, 14:50

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par GM » jeu. 18 juil. 2019, 17:55

Figure asymptote 7edaafc1bffdd0c36fd79ca0492324a3
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***

CODE ASYMPTOTE de la figure ci-dessus : Tout sélectionner
  1. settings.outformat='pdf';
  2.  
  3. size(6cm);
  4. defaultpen(fontsize(11pt));
  5. path p1=(-3,0)..(0,1)..(1,0)..(0,-1)..cycle;
  6. path p2=reflect((0,0), (0,1))*p1;
  7.  
  8. filldraw(p1, lightblue+opacity(.7));
  9. filldraw(p2, lightblue+opacity(.7));
  10. draw(p1^^p2);
  11. // path p=(-3,0)..(0,1)..(1,0)
  12.  
  13. draw((-3.5,0)..(0,1.5)..(3.5,0)..(0,-1.5)..cycle);
  14.  
  15. label("$E$", (-3.5,1));
  16. label("$A$", (-2,0));
  17. label("$B$", (2,0));
  18. label("Diagramme de Venn", (0,-2));
  19. size(6cm);
  20. defaultpen(fontsize(11pt));
  21. path p1=(-3,0)..(0,1)..(1,0)..(0,-1)..cycle;
  22. path p2=reflect((0,0), (0,1))*p1;
  23.  
  24. filldraw(p1, lightblue+opacity(.7));
  25. filldraw(p2, lightblue+opacity(.7));
  26. draw(p1^^p2);
  27. // path p=(-3,0)..(0,1)..(1,0)
  28.  
  29. draw((-3.5,0)..(0,1.5)..(3.5,0)..(0,-1.5)..cycle);
  30.  
  31. label("$E$", (-3.5,1));
  32. label("$A$", (-2,0));
  33. label("$B$", (2,0));
  34. label("Diagramme de Venn", (0,-2));
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.82)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
PC n°2 : Ubuntu 20.04LTS - Asymptote(2.67-?? git) + TexLive2020
Mon serveur : Debian Stretch- Asymptote(2.68-16 git) + TexLive2018
Merci de préciser la votre !

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1516
Enregistré le : dim. 7 mars 2010, 14:50

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par GM » jeu. 18 juil. 2019, 17:57

Il faut que je revois comment j'ai codé la création d'image sur le forum car je m'étonne que l'ajout d'un settings.outformat='pdf' règle le problème.
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.82)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
PC n°2 : Ubuntu 20.04LTS - Asymptote(2.67-?? git) + TexLive2020
Mon serveur : Debian Stretch- Asymptote(2.68-16 git) + TexLive2018
Merci de préciser la votre !

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1516
Enregistré le : dim. 7 mars 2010, 14:50

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par GM » jeu. 18 juil. 2019, 18:00

Que donne l'utilisation de pdflatex ?

Code : Tout sélectionner

asy -f pdf -tex pdflatex M1201-1-union.asy
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.82)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
PC n°2 : Ubuntu 20.04LTS - Asymptote(2.67-?? git) + TexLive2020
Mon serveur : Debian Stretch- Asymptote(2.68-16 git) + TexLive2018
Merci de préciser la votre !

maurice
Messages : 262
Enregistré le : jeu. 25 mars 2010, 13:00
Contact :

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par maurice » jeu. 18 juil. 2019, 18:06

Même erreur il me semble :

Code : Tout sélectionner

$ asy -f pdf -tex pdflatex M1201-1-union.asy
Error: /undefined in .setopacityalpha
Operand stack:
   0.7
Execution stack:
   %interp_exit   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--   --nostringval--   --nostringval--   false   1   %stopped_push   2046   1   3   %oparray_pop   2045   1   3   %oparray_pop   --nostringval--   2025   1   3   %oparray_pop   1884   1   3   %oparray_pop   --nostringval--   %errorexec_pop   .runexec2   --nostringval--   --nostringval--   --nostringval--   2   %stopped_push   --nostringval--
Dictionary stack:
   --dict:967/1684(ro)(G)--   --dict:0/20(G)--   --dict:82/200(L)--
Current allocation mode is local
Current file position is 542
GPL Ghostscript 9.26: Unrecoverable error, exit code 1
/usr/share/asymptote/plain_shipout.asy: 102.11: runtime: shipout failed
Doc 3D
Si ça ne marche pas, essayez la version pdf

Fedora 23 -- Asymptote 2.35 -- TeXlive 2013 -- emacs et/ou gedit

maurice
Messages : 262
Enregistré le : jeu. 25 mars 2010, 13:00
Contact :

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par maurice » jeu. 18 juil. 2019, 18:08

l'ajout de

Code : Tout sélectionner

settings.outformat='pdf';
ne change rien non plus chez moi.
Doc 3D
Si ça ne marche pas, essayez la version pdf

Fedora 23 -- Asymptote 2.35 -- TeXlive 2013 -- emacs et/ou gedit

maurice
Messages : 262
Enregistré le : jeu. 25 mars 2010, 13:00
Contact :

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par maurice » jeu. 18 juil. 2019, 18:10

Par contre l'intersection compile bien.

Figure asymptote 3e862ff5db018e217734c741eed8024f
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***

CODE ASYMPTOTE de la figure ci-dessus : Tout sélectionner
  1. size(6cm);
  2. defaultpen(fontsize(11pt));
  3. path p1=(-3,0)..(0,1)..(1,0)..(0,-1)..cycle;
  4. path p2 = (3,0)..(0,-1)..(-1,0)..(0,1)..cycle;
  5. path BiC=buildcycle(p1,p2);
  6.  
  7. draw(p2^^p1, lightblue);
  8. filldraw(BiC, lightblue, lightblue);
  9. // path p=(-3,0)..(0,1)..(1,0)
  10.  
  11. draw((-3.5,0)..(0,1.5)..(3.5,0)..(0,-1.5)..cycle);
  12.  
  13. label("$E$", (-3.5,1));
  14. label("$A$", (-2,0));
  15. label("$B$", (2,0));
  16. label("$A \cap B$", (0,0));
  17. label("Diagramme de Venn", (0,-2));


En fait, j'ai 4 figures, l'union et la différence donne cette erreur et l'intersection et le complémentaire compilent bien
Doc 3D
Si ça ne marche pas, essayez la version pdf

Fedora 23 -- Asymptote 2.35 -- TeXlive 2013 -- emacs et/ou gedit

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1516
Enregistré le : dim. 7 mars 2010, 14:50

Re: code qui ne compile plus : erreur Ghostscript

Message non lu par GM » jeu. 18 juil. 2019, 18:15

Je viens de lire qu'asymptote a longtemps utilisé gs avec l'option "-dSAFER" et c'est elle qui provoque l'erreur.
Il faut donc passer au moins à la version 2.48 d'asymptote

Mais le fait que l'on réussit à provoquer les deux cas sur le forum (erreur de compilation et compilation réussie) montre qu'une fois que tu seras passé à la version 2.48 ou 2.49, il te faudra encore faire attention à tes options de compilations.
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.82)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
PC n°2 : Ubuntu 20.04LTS - Asymptote(2.67-?? git) + TexLive2020
Mon serveur : Debian Stretch- Asymptote(2.68-16 git) + TexLive2018
Merci de préciser la votre !

Répondre