Thanks for your feedback, Peter.
On Fri, Jan 3, 2014 at 8:30 AM, Peter Bex <peter....@xs4all.nl> wrote: > On Fri, Jan 03, 2014 at 01:44:41AM +0100, Kristian Lein-Mathisen wrote: > > Hi folks, > > and happy new year to all! > > > > I have been playing around with some simple build utilities to get > Chicken > > onto my Android phone (again!). > > Hello Kristian, > > Very cool! Thanks for your continued work in this area. Hopefuly we > can get a *convenient* Android build from all this. > Yes, it'd be great to have end up with a simple 3-step guide to get something up and running. I was able to run the official SDL2 android app with this. But since I am missing bindings for opengl-es and sdl2, I can't do much besides exiting the app "interactively". But I'm still excited about that repl in the otherwise empty game-loop. > > > The fine work <https://github.com/chicken-mobile/android-chicken> by > Bevuta > > allows us to build a cross-chicken which can cross-compile eggs and the > > Chicken runtime. > > But it's not a true cross-compiler, is it? As I understood it, the > Android Makefile from Bevuta just cross-compiles CHICKEN itself, > completely, rather than providing a working csc on the host platform > which generates executables for the target platform. > If I understand your definition of true cross-compiler, then it is exactly what Bevuta gaves us: An android-csc and android-chicken-install which will compile scheme files and eggs for both the host (like x86) and the target (like arm). So getting eggs into your app is pretty easy, provided that your egg doesn't have native dependencies or something else that android-linux-armeabi doesn't like. I have successfully installed: acorn bitstring channel clojurian comparse coops glm intarweb irregex json lazy-seq matchable medea miscmacros sendfile spiffy trie uri-common uri-generic But I haven't tried to produce an extensive list. > > This is great, but I always spend a lot of time going from > > there to getting a Chicken ecosystem running on my app, with eggs and a > > repl. So I've played around with automating parts of that and integrating > > it with ndk-build. > > I was hoping someone would do something like that. It's the natural > next step, and would simplify building for all these stupid different > supported architectures. > Yes, but note that I haven't gotten around to that yet. It's just "armeabi" for now, and we'll need 1 cross-chicken per such platform which isn't great. So this still requires (probably many) manual steps. > > > What I've accomplished so far is basically fewer manual steps when > starting > > a new Chicken app: > > > > - autodetect package name and android platform when building > cross-chicken > > (no config-file editing which I always get wrong) > > - provide an ndk module for chicken that your jni/main.c can depend on > > - make the eggs and unit survive through installation (harder than you > > think!) > > Have you considered simply filing a bugreport for the Android NDK? > I think the requirement that all .so files must be prefixed with 'lib' > is pretty bogus. Hopefully if they do fix it this will be on the NDK > side, and it could be used even for older devices. > I did not think of that! I will post on their groups and see why it's doing that. Unfortunately, it's the on-device installer which doesn't extract non-prefixed files. The libraries are in the apk-file but don't end up under /data/data/package/lib like they should. K. > > Thanks again! > > Cheers, > Peter > -- > http://www.more-magic.net >
_______________________________________________ Chicken-users mailing list Chicken-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/chicken-users