Hi everyone,<div><br></div><div>Earlier today on #lispgames, David hosted a discussion on how to create a nice standalone installer which would make it easy to develop games in Common Lisp. Here's my answer:</div><div>
<br></div><div>Introducing the Blackthorn Starter Pack, a standalone collection of libraries which can be used to develop with any game engine that uses lispbuilder-* and/or cl-opengl. The installation procedure goes something like:</div>
<div><br></div><div> * Install your favorite Lisp implementation.</div><div> * Download and extract the <a href="http://code.google.com/p/blackthorn-engine/downloads/list?can=2&q=Component%3DStarterPack">Blackthorn Starter Pack</a> for your platform.</div>
<div><font class="Apple-style-span" face="arial, sans-serif"> * Load setup.lisp (e.g. for SBCL, run "sbcl --load setup.lisp").</font></div><div><font class="Apple-style-span" face="arial, sans-serif"> * And you're ready to go! (Well, not quite. You need a game engine. But you have all the dependencies installed so that should hopefully be easy.)</font></div>
<div><font class="Apple-style-span" face="arial, sans-serif"><br></font></div><div><font class="Apple-style-span" face="arial, sans-serif">Caveat: The system was originally written with SBCL in mind, but porting it should be pretty trivial, at least for everything which isn't Lispworks Personal Edition.</font></div>
<div><font class="Apple-style-span" face="arial, sans-serif">Second Caveat: For Unix flavors, you'll need to install SDL yourself, because it's pretty much impossible to provide binaries for every possible Unix, and package managers do a better job of that anyhow.<br clear="all">
</font><br></div><div>So that much of the system is working right now. Of course, there are other things which might be nice to have too, including:</div><div><br></div><div> * An easy way to dump binaries on implementations that allow it.</div>
<div> * An easy way to turn binaries into full-featured installers for Windows and apps/dmg files for Mac OS X.</div><div> * Glue code that will automatically find and load dlls/sos/dylibs before your app starts up so that you don't have to worry about where those files are on the end-user system.</div>
<div><br></div><div>For Blackthorn, I've currently hacked these things into a Makefile which I distribute with my engine. But I think it would be not too difficult to provide this functionality as a part of the Starter Pack rather than keeping it in my engine.</div>
<div><br></div><div>Oh, and finally: licensing. Blackthorn is under the MIT license. Which makes it possible to use for literally anything. (Of course, the libraries are all under their own licenses and I can't change that. But at least the glue code is under the MIT license.)</div>
<div><br></div><div>Thoughts? Anyone interested in using such a system?</div><div><br>-- <br>Elliott Slaughter<br><br>"Don't worry about what anybody else is going to do. The best way to predict the future is to invent it." - Alan Kay<br>

</div>