The error I get from TexStudio is "Error: Command crashed: asy -noprc minimal3D-1.asy" (or "Error: Command crashed: asy filename-1.asy" if I don't use -noprc) dmesg | grep error [ 1159.645219] asy[28118]: segfault at 1b150 ip 00007f6a4a0f2f61 sp 00007ffe09692fe0 error 4 in i965_dri.so[7f6a49ff5000+559000] Please note: 1) My asymptote code works perfectly under Windows 7 2) My asymptote code works perfectly under Bodhi Linux (Enlightenment) 3) My asymptote code used to work perfectly under Mageia 4 (KDE) 4) Asymptote 2D works perfectly on all OSs (the problem ONLY concerns 3D rendering on Mageia 5) 5) I get the above error using Mageia 5 (KDE4/Plasma) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% SETTINGS WITHIN TEXSTUDIO (which uses TeXlive): asymptote is started with either: asy ?m*.asy or asy -noprc ?m*.asy PDF viewer (and likewise PS, DVI) is set to either: okular %.pdf > /dev/null or evince %.pdf > /dev/null Build is set to: txs:///asy-pdf-chain Asymptote PDF chain is set to either: txs:///latexmk | txs:///asy | txs:///latexmk | txs:///view-pdf or txs:///pdflatex | txs:///asy | txs:///pdflatex | txs:///view-pdf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% FROM THE ASYMPTOTE DOCUMENTATION: 1. CONFIG FILE ~/.asy/config.asy is: import settings; settings.outformat="pdf"; batchView=false; interactiveView=true; batchMask=false; interactiveMask=true; gs="/usr/bin/gsc"; pdfviewer="evince"; also tried other settings including: gs="gs"; \\eventually points to gsc as above pdfviewer="okular"; 2. I have COPIED reload.js from /usr/share/asymptote/reload.js to ~/.asy INSTALLATION CHECK TeXstudio 2.9.4 (hg :) Using Qt Version 4.8.6, compiled with Qt 4.8.6 R Asymptote 2.32 and xasy both installed. The known 3D "bug" occurs if the following is missing: /usr/share/texmf-dist/tex/latex/media9/media9.sty - it is not missing. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LAPTOP COMPUTER: Linux version: Mageia 5, with KDE desktop Linux localhost 3.19.8-desktop-3.mga5 #1 SMP Sat Jun 13 17:05:48 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux free total used free shared buffers cached Mem: 5988648 2070372 3918276 87980 57792 758644 -/+ buffers/cache: 1253936 4734712 Swap: 4191920 0 4191920 $ sudo lspci -vv -s 00:02.0 00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller]) Subsystem: Toshiba America Info Systems Device 0004 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- SERR- [disabled] Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit- Address: fee0200c Data: 41b1 Capabilities: [d0] Power Management version 2 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Capabilities: [a4] PCI Advanced Features AFCap: TP+ FLR+ AFCtrl: FLR- AFStatus: TP- Kernel driver in use: i915 Kernel modules: i915 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% (SORT OF MINIMAL) EXAMPLE CODE: %Options: KBD=VOID; STD=VOID; LANG=BRITISH; FMT=LATEX; HYPHEN=LATEX; \documentclass[12pt]{article} \usepackage{gensymb} \usepackage{adjustbox} \usepackage{wrapfig} \usepackage[paper=a4paper]{geometry} %[margin=0.5in] shrinks margins to 0.5in \usepackage{graphicx} \usepackage{caption} \usepackage{subcaption} \usepackage[inline]{asymptote} \begin{document} \section{Plot of a pole and a zero} \begin{equation} G(s)=\frac{s+1}{s-1} \end{equation} We plot the function $G(s)$ for all values of $s=\sigma+j\omega$ over the range $(-2.5,-1.5)\le(\sigma, j\omega)\le(2.5,1.5)$. The `input' values are plotted in the normal complex plane, the `output' values are gain (height) and phase (colour.) There is an inherent ambiguity in how to measure $\pm 180\degree$. It is this that is responsible for the phase discontinuity. We have chosen the interval $-\pi\le\theta\le\pi$ but we could equally have chosen $0\le\theta\le2\pi$ or even $0\ge\theta\ge-2\pi$. \begin{figure} \begin{center} \begin{asy} import graph3; import palette; size(200,300,keepAspect=false); currentprojection=orthographic(-4,-2,40); currentlight=Viewport; //currentlight=(10,10,20); int N=100; real eps=0.01; real large=1/eps; // pair zero = (-1,0); pair Gnum(pair snum) {return (snum.x - zero.x, snum.y - zero.y);} // pair pole = (1,0); pair Gden(pair sden) {return (sden.x - pole.x, sden.y - pole.y);} // draw(-3X -- 4X, arrow=Arrow3(emissive(black)), L=Label("$\sigma$",position=EndPoint, align=W)); draw(-2Y -- 2.5Y,arrow=Arrow3(emissive(black)), L=Label("$j\omega$", position=EndPoint)); draw(-1.5Z -- 80Z, arrow=Arrow3(emissive(black)), L=Label("$|G|$",position=EndPoint)); // // pair G(pair s) { real theta, theta1, theta2; real gain; if (abs(ypart(Gnum(s))) > 0 && abs(xpart(Gnum(s))) >0 ) {theta1 = degrees(atan2(ypart(Gnum(s)),xpart(Gnum(s))));} if (abs(ypart(Gden(s))) > 0 && abs(xpart(Gden(s))) >0 ) {theta2 = degrees(atan2(ypart(Gden(s)),xpart(Gden(s))));} theta=theta1+theta2; if (length(Gden(s)) > eps) { gain = length(Gnum(s))/length(Gden(s)); } else { gain = large; }; pair z=(gain,theta); return (z); } // write(G(z)); real fx(pair s) {return (xpart(G(s)));} real fy(triple v) {return (ypart(G((v.x,v.y))));} // pen[] Palette=Rainbow(); surface surf=surface(fx,(-2,-1.5),(2.5,1.5),N,Spline); surf.colors(palette(surf.map(fy),Palette)); draw(surf,render(compression=Low,merge=true)); \end{asy} \caption{$G(s)= (s+1)/(s-1)$ plotted in the $s$-plane} \subcaption*{(Colours are phase angles using atan2$(\omega,\sigma)$. Green =0\degree)} \label{fig:poleZeroPlot} \end{center} \end{figure} \end{document}