Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

README

ECL Build Notes
~~~~~~~~~~~~~~~

Use git-clone, then open a shell in the ecl-iphone-builder directory.
Alternatively, download the release as a tar.gz archive:

  curl -L -o ecl-iphone-builder.tar.gz http://github.com/kriyative/ecl-iphone-builder/tarball/master
  tar xzf ecl-iphone-builder.tar.gz
  cd *ecl-iphone-builder-*

Next, download ECL:

  curl -O http://space.dl.sourceforge.net/project/ecls/ecls/11.1/ecl-11.1.1.tar.gz
  tar xzf ecl-11.1.1.tar.gz

[1] Apply the ECL for iOS patches.

  cd ecl-11.1.1
  patch -p0 < ../ecl-ios-patches.txt 

[2] Building ECL for host, simulator, device, and universal

  ECL_IOS=/opt/ecl-ios
  ../build.sh -t all -d ${ECL_IOS} -v 4.3

  [Note: if you use a different path for ${ECL_IOS}, then you must
  change the ECL_IOS build var in the eclshell Xcode project]

Get yourself a cup of coffee, while this runs (on a 2.26 GHz Intel
Core 2 Duo Mac Book Pro with 4GB RAM and 160GB SSD, it takes about 13
minutes to build everything). When it's done, there should be an
${ECL_IOS} directory with the following contents:

  host/bin/...
  host/include/...
  host/lib/...
  armv6/bin/...
  armv6/include/...
  armv6/lib/...
  armv7/bin/...
  armv7/include/...
  armv7/lib/...
  simulator/bin/...
  simulator/include/...
  simulator/lib/...
  universal/lib/libbytecmp.a
  universal/lib/libecl.a
  universal/lib/libeclgc.a
  universal/lib/libeclgmp.a
  universal/lib/libserve-event.a
  universal/lib/libsockets.a
  
The universal/lib/lib* contain FAT binaries of the static libraries,
which makes it easy to configure the Xcode project.

eclshell Build Notes
~~~~~~~~~~~~~~~~~~~~

Download and setup a SLIME source directory:

  cd ../eclshell
  cvs -d :pserver:anonymous:anonymous@common-lisp.net:/project/slime/cvsroot co -D'2010-01-29' slime

The swank-ecl-patches.txt has been submitted to the SLIME maintainers, and hopefully it will make it into 
the CVS builds one of these days, and this patch step will not be required:

  cd slime
  patch -p0 < ../../swank-ecl-patches.txt
  cd ..

If you specified a different path or SDK version for the ECL build
than the default, be sure to edit the sdk_ver and ecl_root settings in
`eclshell/makefile'.

  make			# see makefile for configuring ecl path

That should generate a libeclffi.a fat library. Now fire up the project
in Xcode:

  open -a xcode eclshell.xcodeproj 

If you specified a different path for the ECL
build than the default (in step 2 above), be sure to change the
ECL_IOS user defined build setting accordingly.

Run a Simulator or Device build. Hopefully it will just work, and
there will be some noisy output as SLIME loads, ending eventually
with:

;; Swank started at port: 4005.

From a local emacs, run M-x slime-connect, to 127.0.0.1 (if running a
Simulator build, for device builds look at the IP address listed on
the device), port 4005.

Happy hacking.

About

ECL Common Lisp for iOS devices (iPhone & iPad)

Resources

Packages

No packages published
You can’t perform that action at this time.