Mathew (thanks for helping me through this, btw)<div><br></div><div>Nothing in ~/.plt-scheme/plt-prefs.ss which could explain this (I haven&#39;t added anything to this manually). Contents of file are below.</div><div><br>
</div><div>This is all rather confusing. When I run drscheme while ssh&#39;ed in from the other machine (ie: using its X server), there doesn&#39;t look to be any old-style non-truetype fonts on display.</div><div><br></div>
<div>I&#39;m ploughing ahead with vim and an mzscheme repl in gnu-screen (sending expr&#39;s from vim to the repl via one of my vimscripts), which is pretty much how I code in clojure. Regardless, I would like to get drscheme running - would be a shame to have a nice looking debugger etc available, and not use it. Am I the only one who has this problem under linux and v4.2.?</div>
<div><br></div><div>--- plt-prefs.ss ---</div><div> (</div><div> (|plt:DrScheme-splash-max-width| 697)</div><div> (plt:framework-pref:framework:exit-when-no-frames #t)</div><div> (plt:framework-pref:drscheme:module-browser-size-percentage 1/5)</div>
<div> (plt:framework-pref:drscheme:logging-size-percentage 3/4)</div><div> (plt:framework-pref:drscheme:unit-window-size-percentage 1/2)</div><div> (plt:framework-pref:drscheme:recent-language-names ((&quot;Determine language from source&quot; #6(#t write mixed-fraction-e #f #t debug) (default) #0() &quot;#lang scheme\n&quot; #t)))</div>
<div> (plt:framework-pref:drscheme:language-settings ((-32768) (#6(#t write mixed-fraction-e #f #t debug) (default) #0() &quot;#lang scheme\n&quot; #t)))</div><div> (plt:framework-pref:drscheme:keybindings-window-size (400 . 600))</div>
<div> (plt:framework-pref:drscheme:frame:initial-position #f)</div><div> (plt:framework-pref:drscheme:unit-window-width 682)</div><div> (plt:framework-pref:drscheme:unit-window-height 649)</div><div> (plt:framework-pref:drscheme:unit-window-max? #f)</div>
<div> (plt:framework-pref:framework:verify-exit #t)</div><div> (plt:framework-pref:drscheme:console-previous-exprs ((&quot;(* 1280 1.6)&quot;) (&quot;(* 1280 1.6)&quot;) (&quot;(/ 1280 1.6)&quot;) (&quot;(* 480 1.6)&quot;)))</div>
<div>)</div><div><br></div><div>Regards,<br>             Imran Rafique<br>
<br><br><div class="gmail_quote">On Fri, May 21, 2010 at 5:49 AM, Matthew Flatt <span dir="ltr">&lt;<a href="mailto:mflatt@cs.utah.edu">mflatt@cs.utah.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Do you have a preferences file in &quot;~/.plt-scheme/plt-prefs.ss&quot;? It<br>
could explicitly set the font that DrScheme uses to an old-style font<br>
instead of an Xft font.<br>
<div><div></div><div class="h5"><br>
At Thu, 20 May 2010 18:31:13 -0700, Imran Rafique wrote:<br>
&gt; Mathew,<br>
&gt;<br>
&gt; Actually, mred runs fine (just tried it). So there&#39;s some font being used by<br>
&gt; code called from drscheme.ss which is causing drscheme to fail?<br>
&gt;<br>
&gt; Regards,<br>
&gt;             Imran Rafique<br>
&gt;<br>
&gt;<br>
&gt; On Thu, May 20, 2010 at 6:39 AM, Matthew Flatt &lt;<a href="mailto:mflatt@cs.utah.edu">mflatt@cs.utah.edu</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; My guess is still that the issue is a lack of support for old-style X11<br>
&gt; &gt; fonts in the X server. If that&#39;s right, there&#39;s still the question of<br>
&gt; &gt; why DrScheme is trying to use an old-style font.<br>
&gt; &gt;<br>
&gt; &gt; When Xft is enabled, it looks like there&#39;s still an XLoadFont() call<br>
&gt; &gt; via XCreateFontCursor(), which is used to get basic cursors like the<br>
&gt; &gt; arrow and I-beam cursor. I don&#39;t think that&#39;s a likely culprit, but it<br>
&gt; &gt; may be worth checking in gdb...<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; I expect that you will see the error when running `mred&#39;. Can you try<br>
&gt; &gt; using `gdb&#39; to run `mred&#39; with the `-synchronous&#39; flag to find out what<br>
&gt; &gt; X call is leading to the X_OpenFont message?<br>
&gt; &gt;<br>
&gt; &gt; Using gdb would go something like this:<br>
&gt; &gt;<br>
&gt; &gt;   % gdb mred<br>
&gt; &gt;   (gdb) handle SIGSEGV nostop noprint<br>
&gt; &gt;   (gdb) run -synchronous<br>
&gt; &gt;<br>
&gt; &gt; The second line is needed because page protection and signal handlers<br>
&gt; &gt; are used to implement write barriers. If you don&#39;t ignore SIGSEGVs,<br>
&gt; &gt; then `mred&#39; will appear to crash right away.<br>
&gt; &gt;<br>
&gt; &gt; The above may not be enough to get gdb to interrupt the program when<br>
&gt; &gt; it&#39;s about to exit with an X11 error. You may have to set breakpoints<br>
&gt; &gt; on exit().<br>
&gt; &gt;<br>
&gt; &gt; Thanks,<br>
&gt; &gt; Matthew<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; At Wed, 19 May 2010 14:57:52 -0700, Imran Rafique wrote:<br>
&gt; &gt; &gt; Mathew (thanks for responding, btw),<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Xft seems to be enabled.<br>
&gt; &gt; &gt; &#39;&#39;configure --help&#39; says that xft support is enabled by default, and I<br>
&gt; &gt; &gt; didn&#39;t disable it manually (I only did --disable-shared)<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; $ pwd<br>
&gt; &gt; &gt; /home/imran/opt/plt-scheme/plt-4.2.5/src/build<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; $ grep -iC2 xft config.log<br>
&gt; &gt; &gt; configure:10964: result: yes<br>
&gt; &gt; &gt; configure:11241: checking for cairo_create in -lcairo<br>
&gt; &gt; &gt; configure:11276: g++ -o conftest -O2 -march=x86-64 -pipe    -pthread<br>
&gt; &gt; &gt; conftest.cpp -lcairo  -L/usr/lib64 -L/usr/X11R6/lib64  -lGL -lXrender<br>
&gt; &gt; -lXft<br>
&gt; &gt; &gt; -lXrender -lfontconfig -lfreetype -lX11   -lcairo   -ldl -lm  -ldl -lm<br>
&gt; &gt; &gt; -rdynamic &gt;&amp;5<br>
&gt; &gt; &gt; configure:11282: $? = 0<br>
&gt; &gt; &gt; configure:11300: result: yes<br>
&gt; &gt; &gt; --<br>
&gt; &gt; &gt; MREDLINKER=&#39;$(CXX)&#39;<br>
&gt; &gt; &gt; MRLIBINSTALL=&#39;install-no-lib&#39;<br>
&gt; &gt; &gt; MROPTIONS=&#39; -DOPERATOR_NEW_ARRAY -DUSE_GL -DWX_USE_XRENDER -DWX_USE_XFT<br>
&gt; &gt; &gt; -DWX_USE_CAIRO -DWX_USE_LIBPNG -DWX_USE_LIBJPEG&#39;<br>
&gt; &gt; &gt; MZBINTARGET=&#39;normal-bin&#39;<br>
&gt; &gt; &gt; MZINSTALLTARGET=&#39;unix-install&#39;<br>
&gt; &gt; &gt; --<br>
&gt; &gt; &gt; XMKMF=&#39;&#39;<br>
&gt; &gt; &gt; X_CFLAGS=&#39; -I/usr/include/freetype2   -I/usr/include/cairo<br>
&gt; &gt; &gt; -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12<br>
&gt; &gt;  &#39;<br>
&gt; &gt; &gt; X_EXTRA_LIBS=&#39; -lGL -lXrender -lXft -lXrender -lfontconfig -lfreetype<br>
&gt; &gt; -lX11<br>
&gt; &gt; &gt;   -lcairo   -lpng -lz -ljpeg&#39;<br>
&gt; &gt; &gt; X_LIBS=&#39; -L/usr/lib64 -L/usr/X11R6/lib64&#39;<br>
&gt; &gt; &gt; X_PRE_LIBS=&#39; -lSM -lICE&#39;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Regards,<br>
&gt; &gt; &gt;             Imran Rafique<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; On Wed, May 19, 2010 at 5:20 AM, Matthew Flatt &lt;<a href="mailto:mflatt@cs.utah.edu">mflatt@cs.utah.edu</a>&gt;<br>
&gt; &gt; wrote:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; At Tue, 18 May 2010 15:35:01 -0700, Imran Rafique wrote:<br>
&gt; &gt; &gt; &gt; &gt; The error msg is:<br>
&gt; &gt; &gt; &gt; &gt; X Error of failed request:  BadValue (integer parameter out of range<br>
&gt; &gt; for<br>
&gt; &gt; &gt; &gt; &gt; operation)<br>
&gt; &gt; &gt; &gt; &gt;   Major opcode of failed request:  45 (X_OpenFont)<br>
&gt; &gt; &gt; &gt; &gt;   Value in failed request:  0x5e0040b<br>
&gt; &gt; &gt; &gt; &gt;   Serial number of failed request:  14804<br>
&gt; &gt; &gt; &gt; &gt;   Current serial number in output stream:  14805<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; [...]<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; I&#39;m guessing that there needs to be some post-install font<br>
&gt; &gt; configuration<br>
&gt; &gt; &gt; &gt; &gt; that needs to be done (mkfontdir?), but I don&#39;t see plt-scheme trying<br>
&gt; &gt; to<br>
&gt; &gt; &gt; &gt; &gt; install its own fonts anywhere (blindness on my part<br>
&gt; &gt; notwithstanding!).<br>
&gt; &gt; &gt; &gt; Does<br>
&gt; &gt; &gt; &gt; &gt; plt-scheme install any of its own fonts for drscheme, or does it<br>
&gt; &gt; expect a<br>
&gt; &gt; &gt; &gt; &gt; specific font to already be available on the local x server (in which<br>
&gt; &gt; &gt; &gt; case,<br>
&gt; &gt; &gt; &gt; &gt; which one is it?).<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; No, PLT Scheme doesn&#39;t install any fonts.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; There are two font modes: old-stle X11 fonts and Fontconfig/Xft fonts.<br>
&gt; &gt; &gt; &gt; The mode depends partly on the way that PLT Scheme is compiled (with Xf<br>
&gt; &gt; &gt; &gt; support or not) and partly on what&#39;s available from the X server at<br>
&gt; &gt; &gt; &gt; run-time.<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; When you configure, does the configure script say that Xft support is<br>
&gt; &gt; &gt; &gt; enabled?<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt;<br>
</div></div></blockquote></div><br></div>