ECL has finally made it to the iPhone! It took a port of the garbage collector and a lot of time messing around with configuration settings, but I have finally built a bare bones version of ECL that runs on the iPhone/iPod Touch.
However, I still don't have all the bells and whisltes working correctly. My current problem is getting ASDF to properly compile into ECL. I cannot get ECL to build, even for the i386 Darwin non-cross-compiled version of ECL, when I have ASDF enabled and the --disable-shared flag set in the configuration script. I get the following error a ways into the lisp portion of compilation:
;;; ar cr libsockets.a /private/var/folders/bZ/bZzxCBiyF0ec7xuYjNmSMk+++TI/-Tmp-/ECLINIT5W4NFx.o /Users/red/Projects/ecl/ecl-git/build/ext/package.o /Users/red/Projects/ecl/ecl-git/build/ext/sockets.o
;;; Note: Invoking external command:
The function ASDF:FIND-SYSTEM is undefined.
;;; ranlib libsockets.aBroken at TOP-LEVEL. File: #P"/Users/red/Projects/ecl/ecl-git/src/lsp/top.lsp" (Form #26)No restarts available.
I cannot make much of this error. I noticed an earlier thread on this list mentioned the same kind of error, but I did not understand the solution (it involved setting LDFLAGS to -rpath=..., but rpath isnt' even an option in the apple version of gcc.
Any idea what's going on here? The error message doesn't really tell me much about what's going wrong. I am even more confused about why the --disable-shared flag makes any difference.
So far I am successfully compiling --with-sockets... more features coming soon. I really want to get ASDF working so I can hook SLIME up to a remote swank on the iPhone.
On Wed, Feb 11, 2009 at 9:21 PM, Red Daly <email@example.com> wrote:Sorry, this went unnoticed through my mailbox. I have a pretty good
> I posted this message in september and thought I would see if anyone has any
> insights this time around. This is where I gave up last time I tried to get
> ECL to compile for iPhone/armv6. Has anyone had similar problems with other
> platforms? Does somebody with intimate knowledge of the build process know
> how the indices could go wrong?
idea of what happens here: cross-compilation implies building ECL with
a different version, and it may be the case that the host version has
a different set of symbols. This may happen if the host and the cross
compiled version are configured with different flags.
c/ Serrano, 113b, Madrid 28009 (Spain)
Instituto de Física Fundamental, CSIC