[asdf-install-devel] ASDF-Install working on Windows XP with CLISP

Andy Cristina acristin at gmail.com
Mon May 28 22:05:05 UTC 2007


My experience getting asdf-install to work on windows could be summed
up with two sentences: If you fix path issues and ignore cygwin, the
unix side of the code works fine for windows.  If you can find a
version of GNU tar that is not terminally braindead, asdf-install
works fine on windows.

The fact that asdf-install reads the output of tar to find .asd files
was always something that I considered to be really really horrible,
but it was too much effort to change for something that, ultimately, I
decided wasn't worth using anyway (not that its bad software, I just
found that it wasn't very difficult to install things by hand and I
was having to install libraries where the asdf-install link was not
current).

On 5/26/07, Chris Done <chrisdone at googlemail.com> wrote:
> Hi. I've been fudging about with ASDF-Install on Windows+CLISP and
> here's what I've been up to.
>
> What works (and did not before)
> ----------
>
> (1) The system-wide location chooses a more sensible location by default.
> (2) When extracting the ASDF packages it now uses the MinGW version of
> tar, and works successfully.
> (3) Now uses a tiny (12KB) shortcut creating utility I wrote (MIT
> license if you want the C++ code*) to create shortcuts to the .asd
> files. It uses this transparently in the same way that the tar
> extracting code does.
> (4) Retrieving dependencies works correctly. E.g. I can successfully
> download and install cl-irc and its dependencies.
>
> * I was going to write the shortcut creation with CLISP's FFI, but you
> have to use COM in Windows to create shortcuts, and to implement a
> wrapper in Lisp for that is a frightening concept to me indeed.
>
> Problems
> --------
>
> My actual Cygwin installation is broken. Such was my initial
> motivation to "fix" ASDF-Install was because a friend said he was
> using Emacs and CLISP under Cygwin (on Windows XP) so that he could
> use ASDF-Install. So, I figured I would make modifications that make
> it independent of Cygwin and Cygwin's bash.
>
> The actual execution of Cygwin's tar didn't seem correct. I replaced
> the execution program and arguments with that of MinGW's tar and it
> seemed to hang while reading from the stream, even though tar outputs
> something. Perhaps I am in the wrong, but I wrote another function
> that does this for the MinGW tar so that it returns the output
> successfully.
>
> I'm not sure about defsystem, I've never used it or read about it. I
> don't remember modifying anything asdf-specific, but I probably may
> have. I'll have to look into it.
>
> What I plan to do
> -----------------
>
> I've learned a lot about Common Lisp and portability in going through
> ASDF-Install, so I'll probably be making quite a few additions to it.
>
> I need to clean up a few things, to make sure my modifications are
> completely transparent i.e ASDF-Install works precisely as before on
> non-Windows+CLISP setups.
>
> Once I've cleaned up the code, as I said before, I'll upload it
> somewhere if anyone wants to test it on their Windows+CLISP setup.
>
> What I'm considering
> --------------------
>
> My heart jumps when the error pops up in SLIME about PGP signatures,
> where I commonly select "don't verify". I was thinking it may be a
> good idea to make errors and choices interactive. But, I know some
> people do like interactive programs, likewise sometimes I do not. So
> in that case perhaps asdf-install:install could have a ':interactive'
> option which would enable a more newb-friendly, simple interface --
> but would not be the default option… or some other method of
> controlling the way that ASDF-Install interacts with the user. E.g.:
>
> (asdf-install:install 'cl-irc :interactive t)
>
> I'm probably going to implement something like this. But I would like
> to know your opinions on what I have done and what I plan to do, if
> you have any. Being primarily on Windows, I think I have the
> opportunity to add some cool stuff to ASDF-Install on the Windows side
> of things. Ho, ho.
>
> Cheers
>
> --
> Chris Done
> _______________________________________________
> asdf-install-devel mailing list
> asdf-install-devel at common-lisp.net
> http://common-lisp.net/cgi-bin/mailman/listinfo/asdf-install-devel
>



More information about the asdf-install-devel mailing list