Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!usenet.ins.cwru.edu!Bach!doleh From: doleh@Bach.CES.CWRU.Edu (Yasser Doleh) Newsgroups: comp.windows.x Subject: Re: Tek mode gives bus error... Message-ID: <1990Feb22.233105.27158@usenet.ins.cwru.edu> Date: 22 Feb 90 23:31:05 GMT References: <9002211946.AA14655@ATHENA.MIT.EDU> Organization: CWRU Dept of Computer Engineering and Science Lines: 40 In article <9002211946.AA14655@ATHENA.MIT.EDU> DEG41560@UA1VM.BITNET (Rob Smith) writes: >Hi, >Everything seems to work now (rather well, too), >except that I cannot get Tek mode in xterm (neither from the menu, >escape sequences (generated by MATLAB), or from a command line option). >WhenI try for Tek mode, I get a Bus Error (nothing more informative than that). >Has anyone else had this problem? Do I need to recompile the whole >distribution? Users around here need Tek Mode for MATLAB, so I've got to >fix it before I convert all the machines to R4. We had the same problem. In the file Tekproc.c around line 1289 there is the following code: if (tw->tek.initial_font) { char *s = tw->tek.initial_font; XmuCopyISOLatin1Lowered (s, s); The function XmuCopyISOLatin1Lowered tries to modify the string s which has a default value the constant s. gcc make all string constants read only. This is where xterm fail. To solve the problem: 1 - compile Tekproc.c using gcc -fwritable-strings 2 - modify Tekproc such that the you pass an array to XmuCopyISOLatin1Lowered instead of the string constant. 3 - A temprory solution will be in /usr/lib/X11/app-defaults/XTerm put the following line *tek4014*initialFont: large which make the value on s above a variable not the default string constant. I did not know which is better ? modify the Imakefile to compile Tekproc with -fwritable-strings ? or modify Tekproc.c ? What the xperts say about that ? Thanks doleh@math-cs.kent.edu