Re: Anyone have experience with building Windows executables with free Common Lisp implementations?
- From: George Neuner <gneuner2@xxxxxxxxxxx>
- Date: Fri, 17 Apr 2009 15:54:18 -0400
On Fri, 17 Apr 2009 05:02:05 -0700 (PDT), MishoM
<mihaylov.mihail@xxxxxxxxx> wrote:
On Apr 17, 1:42 pm, Phil Armitage <philip.armit...@xxxxxxxxx> wrote:
On 17 Apr, 11:27, MishoM <mihaylov.mih...@xxxxxxxxx> wrote:
But I'm really disappointed that the free CL implementations don't
seem to make a difference between an "open" Lisp system and a
"finalized, closed" standalone executable. It seems obvious to me that
both are totally valid use cases and are also fundamentally different.
It is of great benefit to be able to change the system while it is
running when running a web based application for example, but when you
want to create a "desktop" application the "full Lisp system" is just
unnecessary baggage...
It's just a different way of looking at things. I agree, native
executables are what most end users will expect but you can of course
ship the compiler, libraries and a batch file inside a neat installer
package which puts the necessary bits in the start menu. Most users
don't tend to go routing around in 'Program Files' to see what you put
there.
This approach means shipping the compiler with every application -
i.e. a lot of duplication. And delivering executables is not only what
users expect, its also what many developers expect (at least because
the users expect it, if not for some other reason).
You said you're targeting Windows. Have you not noticed there is a
folder called "Common Files" in "Program Files"? That is one place
you can put stuff that you expect to reuse in multiple applications.
Every Windows version since NT (~1993) has had it.
The other simple answer is to create a folder named for your company
and install each product in a subfolder within it. You can then
install CLisp in a common subfolder and reuse it as you wish. Or you
can just install CLisp directly in Program Files ... then anyone can
use it.
The only thing you need to watch out for with shared executable
dependencies is the EXE version of DLL hell. If your program depends
on any private modifications to your Lisp or any of its libraries,
keep the mods in your own program directory so you don't accidentally
screw up another application. This holds regardless of what platform
you deploy on.
Not having this
ability, or having an inadequate implementation of it is a problem
which ranges from a mere inconvenience to a real showstopper, because
it may affect the final application in many ways. And the fact that
the major commercial implementers support it is a clear indication
that this is a feature which adds value to the product, otherwise they
wouldn't put effort into it.
Bottom line - this is a valuable feature and to me, not having it in
the free implementations shows that their implementers are biased to
Linux, where there is often a CL system available, and to web apps,
where this doesn't matter.
Linux (or shall we say "command line") bias is mostly irrelevant.
Windows is, for the most part, no harder to develop for or install on
than Linux - it's just different.
Microsoft's Windows installer is freely available and it will take
care of creating directories, modifying the path, making registry
entries (if necessary), installing for everyone or just the current
user, etc.
The only really important difference between the platforms is memory
management. Windows executables are not (memory) position independent
so you have to be careful on 32-bit Windows if your programs need to
share memory or if you need to run multiple instances of programs that
use (non-system) DLLs. In these circumstances it's a bit too easy to
run out of address space. The issues largely go away on 64-bit
Windows.
George
.
- References:
- Anyone have experience with building Windows executables with free Common Lisp implementations?
- From: MishoM
- Re: Anyone have experience with building Windows executables with free Common Lisp implementations?
- From: Phil Armitage
- Re: Anyone have experience with building Windows executables with free Common Lisp implementations?
- From: MishoM
- Re: Anyone have experience with building Windows executables with free Common Lisp implementations?
- From: Phil Armitage
- Re: Anyone have experience with building Windows executables with free Common Lisp implementations?
- From: MishoM
- Anyone have experience with building Windows executables with free Common Lisp implementations?
- Prev by Date: Re: 3n+1 problem
- Next by Date: Re: 3n+1 problem
- Previous by thread: Re: Anyone have experience with building Windows executables with free Common Lisp implementations?
- Next by thread: Re: Anyone have experience with building Windows executables with free Common Lisp implementations?
- Index(es):
Relevant Pages
|
Loading