caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list]  ocaml-4.02.3 for iOS
@ 2015-09-26  9:33 Gerd Stolpmann
  0 siblings, 0 replies; only message in thread
From: Gerd Stolpmann @ 2015-09-26  9:33 UTC (permalink / raw)
  To: caml-list; +Cc: Jeffrey Scofield, SEAiq Navigation

[-- Attachment #1: Type: text/plain, Size: 2623 bytes --]

Hi,

I rebased our development branch to 4.02.3, and did few quick tests, and
everything seems to work. At this point I'd like to invite all iOS
developers to check out our work, and help us finding the last bugs:

https://github.com/gerdstolpmann/ocaml/tree/gs-4.02.3+ios

Problems should be discussed here:

http://caml.inria.fr/mantis/view.php?id=6986

What you get is a cross compiler for either armv7, armv7s, or arm64. See
the instructions below how to install.

This branch is based on Jeffrey Scofield's work to port ocaml to (32
bit) iOS. We (Gerd, Jeffrey and Mark) added support for armv7s and
arm64, and tried to better adapt to the coding standards of the ocaml
sources. There is an effort to merge this branch into mainline OCaml.

So how to install:

 - You need a host ocaml compiler for Mac, and this compiler must also
   be version 4.02.3, and the word size must match the word size of the
   target (i.e. 64 bit for arm64, and 32 bit for armv7/armv7s). Please
   take these requirements seriously - they are checked. The
   host compiler must be in your PATH. (NB. For getting a 32 bit
   host compiler please take http://caml.inria.fr/mantis/view.php?id=6900
   into account.)
 - Clone:
   git clone https://github.com/gerdstolpmann/ocaml/tree/gs-4.02.3+ios
 - Look at the checked-out build.sh script. Modify the variables for
   platform, target, and SDK version.
 - Configure and build: ./build.sh -prefix /where/you/want/it
 - Install: make install

What you get:

 - The installed compilers remain dependent on the host installation
   (so don't delete it after building). In particular, the "ocamlrun"
   executable of the host is still used.
 - The installed runtime is for the target, in particular all the
   libraries (such as libocamlrun.a, and libasmrun.a)
 - The native-code compiler ocamlopt generates executables, but you
   can also emit object files (-output-obj) that can be linked with
   any existing app. You'll also need libasmrun.a in this case.
 - For completeness, you can also use ocamlc -custom to generate
   stand-alone bytecode executables. I guess this is less interesting,
   and I'm not sure whether Apple would allow this format in the app
   store.

Gerd 

-- 
------------------------------------------------------------
Gerd Stolpmann, Darmstadt, Germany    gerd@gerd-stolpmann.de
My OCaml site:          http://www.camlcity.org
Contact details:        http://www.camlcity.org/contact.html
Company homepage:       http://www.gerd-stolpmann.de
------------------------------------------------------------


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2015-09-26  9:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-26  9:33 [Caml-list] ocaml-4.02.3 for iOS Gerd Stolpmann

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).