<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: SBCL + Emacs + Windows Vista</title>
	<atom:link href="http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/feed/" rel="self" type="application/rss+xml" />
	<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/</link>
	<description></description>
	<pubDate>Sat, 05 Jul 2008 21:05:42 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: robert</title>
		<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/#comment-80</link>
		<dc:creator>robert</dc:creator>
		<pubDate>Wed, 11 Jun 2008 15:45:48 +0000</pubDate>
		<guid isPermaLink="false">http://robert.zubek.net/blog/?p=21#comment-80</guid>
		<description>Praki - I used the version of asdf-install linked above. But I have not experimented with it since then - it's possible that it has changed further.</description>
		<content:encoded><![CDATA[<p>Praki - I used the version of asdf-install linked above. But I have not experimented with it since then - it&#8217;s possible that it has changed further.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Praki Prakash</title>
		<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/#comment-79</link>
		<dc:creator>Praki Prakash</dc:creator>
		<pubDate>Wed, 11 Jun 2008 14:57:47 +0000</pubDate>
		<guid isPermaLink="false">http://robert.zubek.net/blog/?p=21#comment-79</guid>
		<description>Hi Robert,

After having struggled with asdf and asdf-install on WinXP, I can tell you that this subject deserves its own book! Anyway, I have been debugging the issue in using asdf-install with SBCL and WinXP. Your post proved to be a great aid. However, the version of asdf-install that I can find online doesn't have a tar-arguments function but there is a tar-argument function. The return-output-from-program returns nothing causing a read-line error.

Can you tell me where you found the asdf-install package that you were able to hack an work?

Thanks,</description>
		<content:encoded><![CDATA[<p>Hi Robert,</p>
<p>After having struggled with asdf and asdf-install on WinXP, I can tell you that this subject deserves its own book! Anyway, I have been debugging the issue in using asdf-install with SBCL and WinXP. Your post proved to be a great aid. However, the version of asdf-install that I can find online doesn&#8217;t have a tar-arguments function but there is a tar-argument function. The return-output-from-program returns nothing causing a read-line error.</p>
<p>Can you tell me where you found the asdf-install package that you were able to hack an work?</p>
<p>Thanks,</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Christensen</title>
		<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/#comment-78</link>
		<dc:creator>Peter Christensen</dc:creator>
		<pubDate>Fri, 30 May 2008 19:52:48 +0000</pubDate>
		<guid isPermaLink="false">http://robert.zubek.net/blog/?p=21#comment-78</guid>
		<description>It's a little bit different on Windows xP: it requires a reboot to move the environment variables from user to system, but after the reboot it works fine.  Also, since the PATH and SBCL_HOME variables are populated, all you need in the .emacs file is:

(setq inferior-lisp-program "sbcl")
...

I wrote a complete setup guide for Windows XP here:

http://www.pchristensen.com/blog/articles/installing-sbcl-emacs-and-slime-on-windows-xp/</description>
		<content:encoded><![CDATA[<p>It&#8217;s a little bit different on Windows xP: it requires a reboot to move the environment variables from user to system, but after the reboot it works fine.  Also, since the PATH and SBCL_HOME variables are populated, all you need in the .emacs file is:</p>
<p>(setq inferior-lisp-program &#8220;sbcl&#8221;)<br />
&#8230;</p>
<p>I wrote a complete setup guide for Windows XP here:</p>
<p><a href="http://www.pchristensen.com/blog/articles/installing-sbcl-emacs-and-slime-on-windows-xp/" rel="nofollow">http://www.pchristensen.com/blog/articles/installing-sbcl-emacs-and-slime-on-windows-xp/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Installing SBCL, Emacs, and SLIME on Windows XP &#187; What&#8217;s In Peter&#8217;s Head</title>
		<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/#comment-77</link>
		<dc:creator>Installing SBCL, Emacs, and SLIME on Windows XP &#187; What&#8217;s In Peter&#8217;s Head</dc:creator>
		<pubDate>Fri, 30 May 2008 19:04:35 +0000</pubDate>
		<guid isPermaLink="false">http://robert.zubek.net/blog/?p=21#comment-77</guid>
		<description>[...] Zubek wrote a post about 2 months ago about how to setup SBCL/Emacs/SLIME on Vista, but it doesn&#8217;t work exactly right on Windows XP. If you use the .emacs settings from his [...]</description>
		<content:encoded><![CDATA[<p>[...] Zubek wrote a post about 2 months ago about how to setup SBCL/Emacs/SLIME on Vista, but it doesn&#8217;t work exactly right on Windows XP. If you use the .emacs settings from his [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Running SBCL on Windows &#171; Brainrack Aborning - Developing a Search Engine</title>
		<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/#comment-76</link>
		<dc:creator>Running SBCL on Windows &#171; Brainrack Aborning - Developing a Search Engine</dc:creator>
		<pubDate>Thu, 29 May 2008 19:15:12 +0000</pubDate>
		<guid isPermaLink="false">http://robert.zubek.net/blog/?p=21#comment-76</guid>
		<description>[...] http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/ http://sbcl-internals.cliki.net/Build%20on%20Windows http://www.sbcl.org/ [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/" rel="nofollow">http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/</a> <a href="http://sbcl-internals.cliki.net/Build%20on%20Windows" rel="nofollow">http://sbcl-internals.cliki.net/Build%20on%20Windows</a> <a href="http://www.sbcl.org/" rel="nofollow">http://www.sbcl.org/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Neil Haven</title>
		<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/#comment-37</link>
		<dc:creator>Neil Haven</dc:creator>
		<pubDate>Fri, 16 May 2008 18:04:15 +0000</pubDate>
		<guid isPermaLink="false">http://robert.zubek.net/blog/?p=21#comment-37</guid>
		<description>Thanks Robert!
  Posts like these are a real service to the lisp community.  (It is good to know there are other people working in SBCL under Vista.)
  Your recipe above works equally well for XEmacs ver 21.4.21 except that under XEmacs your init file will be ~/.xemacs/init.el instead of ~/.emacs.
  Also, I solved the problem of spaces in file names by reverting to the old-style MS-DOS 8.3 pathnames that are available by doing a dir /X at a command prompt instead of by using links.  Once I have convinced myself that windows links aren't going to get all microsoft-cranky on me, I'll probably switch to your method.
  Best of luck.</description>
		<content:encoded><![CDATA[<p>Thanks Robert!<br />
  Posts like these are a real service to the lisp community.  (It is good to know there are other people working in SBCL under Vista.)<br />
  Your recipe above works equally well for XEmacs ver 21.4.21 except that under XEmacs your init file will be ~/.xemacs/init.el instead of ~/.emacs.<br />
  Also, I solved the problem of spaces in file names by reverting to the old-style MS-DOS 8.3 pathnames that are available by doing a dir /X at a command prompt instead of by using links.  Once I have convinced myself that windows links aren&#8217;t going to get all microsoft-cranky on me, I&#8217;ll probably switch to your method.<br />
  Best of luck.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: robert</title>
		<link>http://robert.zubek.net/blog/2008/04/09/sbcl-emacs-windows-vista/#comment-5</link>
		<dc:creator>robert</dc:creator>
		<pubDate>Sat, 12 Apr 2008 03:53:52 +0000</pubDate>
		<guid isPermaLink="false">http://robert.zubek.net/blog/?p=21#comment-5</guid>
		<description>Also, here are some notes for getting ASDF-install to work with SBCL and Windows. They weren't worth their own blog posting, really. :)

It's tricky to get asdf-install to work in a Windows SBCL installation, due to a combination of reliance on Unix tools for archive processing, and some problems with inter-process communication on the Windows port of SBCL. 

This produces errors such as the following, when trying to run asdf-install:



&lt;blockquote&gt;CL-USER&gt; (asdf-install:install 's-xml-rpc)
...
couldn't fork child process: No such file or directory
   [Condition of type SIMPLE-ERROR]
...
Backtrace:
  0: (RUN-PROGRAM "tar" ("-tzf" "c:\\Program Files\\emacs-22.2\\bin\\S-XML-RPC.asdf-install-tmp"))&lt;/blockquote&gt;

Here's a method to get this up and running. The following was done using SBCL 1.0.13 and a recent version of ASDF-Install, all running on a Windows Vista machine. 


I. The tools

First, get a copy of ASDF-Install from the "asdf-install-unstable" repository:
    &lt;code&gt;http://common-lisp.net/project/asdf-install/asdf-install_latest.tar.gz&lt;/code&gt;

SBCL comes with its own, older version - I just installed this new one right on top of the old one, in the &lt;em&gt;sbcl/asdf-install&lt;/em&gt; directory.

Second, you'll need Cygwin, for the bash and tar programs from Unix. Plus, it's a very cool toolset. :)  
    &lt;code&gt;http://www.cygwin.com&lt;/code&gt;

II. The kluges

Now time for some diffs. 

First of all, in &lt;em&gt;asdf-install/variables.lisp&lt;/em&gt;, customize the paths to match your Cygwin install. In particular, the following: (changed lines in &lt;strong&gt;boldface&lt;/strong&gt;)



&lt;blockquote&gt;  #+(or :win32 :mswindows)
  (defvar *cygwin-bin-directory*
   &lt;strong&gt;(pathname "C:\\Cygwin\\bin\\"))&lt;/strong&gt;  

  #+(or :win32 :mswindows)
  (defvar *cygwin-bash-program*
&lt;strong&gt;   "C:\\Cygwin\\bin\\bash.exe")&lt;/strong&gt;
&lt;/blockquote&gt;


Second, in &lt;em&gt;asdf-install/installer.lisp&lt;/em&gt;, in the function &lt;em&gt;tar-arguments&lt;/em&gt;, we get rid of extra backslashes and double quotes:



&lt;blockquote&gt;(defun tar-arguments (...)
    ...
    #+(or :win32 :mswindows)
    (list "-l" "-c"
  	(format nil 
&lt;strong&gt;		"tar -C `cygpath '~A'` -xzvf `cygpath '~A'`"&lt;/strong&gt;
  		(namestring (truename source))
  		(namestring (truename packagename))))&lt;/blockquote&gt;



Finally, a change in &lt;em&gt;asdf-install/port.lisp&lt;/em&gt;: the function &lt;em&gt;return-output-from-program&lt;/em&gt; has got to lose its output redirection, because it confuses Win32 SBCL. (In effect, it will no longer return any output from program, but be that as it may. :) ) The new version looks like:



&lt;blockquote&gt; (defun return-output-from-program (program args)
   (with-output-to-string (out-stream)
     (let ((proc (sb-ext:run-program
                  program args :search t :wait t)))
       (when (or (null proc)
                 (and (member (sb-ext:process-status proc) '(:exited :signaled))
                      (not (zerop (sb-ext:process-exit-code proc)))))
         (return-from return-output-from-program nil)))))&lt;/blockquote&gt;



3. The results. 

Now everything should be ready to run. 



&lt;blockquote&gt;CL-USER&gt; (require 'asdf-install)
CL-USER&gt; (asdf-install:install 's-xml-rpc)&lt;/blockquote&gt;



A few additional notes:

1. At the &lt;em&gt;"Install where?"&lt;/em&gt; prompt, it's easiest to install to the local directory. System-wide install will fail because of Vista user-access control, unless you're running your Lisp session as root. :)

2. GPG verification isn't supported on Win32 SBCL, and would require more kluging.

3. ASDF by itself expects all definition files to be linked manually to the repository directory. For a quick script to automate that, see this page: &lt;code&gt;http://www.cliki.net/asdf&lt;/code&gt; - under the &lt;em&gt;Alternative Sysdef Search functionality &lt;/em&gt;heading.</description>
		<content:encoded><![CDATA[<p>Also, here are some notes for getting ASDF-install to work with SBCL and Windows. They weren&#8217;t worth their own blog posting, really. <img src='http://robert.zubek.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>It&#8217;s tricky to get asdf-install to work in a Windows SBCL installation, due to a combination of reliance on Unix tools for archive processing, and some problems with inter-process communication on the Windows port of SBCL. </p>
<p>This produces errors such as the following, when trying to run asdf-install:</p>
<blockquote><p>CL-USER> (asdf-install:install &#8217;s-xml-rpc)<br />
&#8230;<br />
couldn&#8217;t fork child process: No such file or directory<br />
   [Condition of type SIMPLE-ERROR]<br />
&#8230;<br />
Backtrace:<br />
  0: (RUN-PROGRAM &#8220;tar&#8221; (&#8221;-tzf&#8221; &#8220;c:\\Program Files\\emacs-22.2\\bin\\S-XML-RPC.asdf-install-tmp&#8221;))</p></blockquote>
<p>Here&#8217;s a method to get this up and running. The following was done using SBCL 1.0.13 and a recent version of ASDF-Install, all running on a Windows Vista machine. </p>
<p>I. The tools</p>
<p>First, get a copy of ASDF-Install from the &#8220;asdf-install-unstable&#8221; repository:<br />
    <code><a href="http://common-lisp.net/project/asdf-install/asdf-install_latest.tar.gz" rel="nofollow">http://common-lisp.net/project/asdf-install/asdf-install_latest.tar.gz</a></code></p>
<p>SBCL comes with its own, older version - I just installed this new one right on top of the old one, in the <em>sbcl/asdf-install</em> directory.</p>
<p>Second, you&#8217;ll need Cygwin, for the bash and tar programs from Unix. Plus, it&#8217;s a very cool toolset. <img src='http://robert.zubek.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
    <code><a href="http://www.cygwin.com" rel="nofollow">http://www.cygwin.com</a></code></p>
<p>II. The kluges</p>
<p>Now time for some diffs. </p>
<p>First of all, in <em>asdf-install/variables.lisp</em>, customize the paths to match your Cygwin install. In particular, the following: (changed lines in <strong>boldface</strong>)</p>
<blockquote><p>  #+(or :win32 :mswindows)<br />
  (defvar *cygwin-bin-directory*<br />
   <strong>(pathname &#8220;C:\\Cygwin\\bin\\&#8221;))</strong>  </p>
<p>  #+(or :win32 :mswindows)<br />
  (defvar *cygwin-bash-program*<br />
<strong>   &#8220;C:\\Cygwin\\bin\\bash.exe&#8221;)</strong>
</p></blockquote>
<p>Second, in <em>asdf-install/installer.lisp</em>, in the function <em>tar-arguments</em>, we get rid of extra backslashes and double quotes:</p>
<blockquote><p>(defun tar-arguments (&#8230;)<br />
    &#8230;<br />
    #+(or :win32 :mswindows)<br />
    (list &#8220;-l&#8221; &#8220;-c&#8221;<br />
  	(format nil<br />
<strong>		&#8220;tar -C `cygpath &#8216;~A&#8217;` -xzvf `cygpath &#8216;~A&#8217;`&#8221;</strong><br />
  		(namestring (truename source))<br />
  		(namestring (truename packagename))))</p></blockquote>
<p>Finally, a change in <em>asdf-install/port.lisp</em>: the function <em>return-output-from-program</em> has got to lose its output redirection, because it confuses Win32 SBCL. (In effect, it will no longer return any output from program, but be that as it may. <img src='http://robert.zubek.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) The new version looks like:</p>
<blockquote><p> (defun return-output-from-program (program args)<br />
   (with-output-to-string (out-stream)<br />
     (let ((proc (sb-ext:run-program<br />
                  program args :search t :wait t)))<br />
       (when (or (null proc)<br />
                 (and (member (sb-ext:process-status proc) &#8216;(:exited :signaled))<br />
                      (not (zerop (sb-ext:process-exit-code proc)))))<br />
         (return-from return-output-from-program nil)))))</p></blockquote>
<p>3. The results. </p>
<p>Now everything should be ready to run. </p>
<blockquote><p>CL-USER> (require &#8216;asdf-install)<br />
CL-USER> (asdf-install:install &#8217;s-xml-rpc)</p></blockquote>
<p>A few additional notes:</p>
<p>1. At the <em>&#8220;Install where?&#8221;</em> prompt, it&#8217;s easiest to install to the local directory. System-wide install will fail because of Vista user-access control, unless you&#8217;re running your Lisp session as root. <img src='http://robert.zubek.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>2. GPG verification isn&#8217;t supported on Win32 SBCL, and would require more kluging.</p>
<p>3. ASDF by itself expects all definition files to be linked manually to the repository directory. For a quick script to automate that, see this page: <code><a href="http://www.cliki.net/asdf" rel="nofollow">http://www.cliki.net/asdf</a></code> - under the <em>Alternative Sysdef Search functionality </em>heading.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
