Jean Mouric

professeur de mathématiques à Rennes

vous propose quelques utilitaires pour Caml sous Mac OS X, Windows ou Java




MacCaml         WinCaml 7.2 pour Windows         WinCaml 7.2 pour Linux, Mac, Windows         Code source de WinCaml 7.2         JavaCaml

Patches et distributions binaires natives Caml Light et OCaml



Dernières mises à jour:

02/10/2022: Dossier de WinCaml 7
Rétablissement dans les dossiers exemples/Caml Light/unicode/yoyo et exemples/OCaml/unicode/yoyo de fichiers perdus

26/09/2022: Distribution bytecode ocaml 4.14.0 pour Windows XP et WinCaml
- Nouvelles archives ocamlms.zip et ocamlms64.zip contenant libgraph, libnum et libstr
- Changement de Scintilla.dll dans WinCaml7 (x86) et WinCaml7 (mingw x86)

23/09/2022: Dossier de WinCaml 7 et Distributions binaires Ocaml 4.14.0 pour Windows 10 ou 11 x64
- Mise à jour dans le dossier de WinCaml 7 du sous-dossier exemples :
exemples utilisant ocamlopt (nombres de Mersenne, calcul de Pi, Rubik's cube 2x2x2)
- Ajout de mpir.lib (resp. libgmp.a) dans ocamlms64/lib/ocaml/site-lib/zarith (resp. ocamlmgw64/lib/ocaml/site-lib/zarith)

04/09/2022: Patch OCaml pour Windows 10 ou 11 x64 (émulation x64 sous Windows 11 arm64)
Remplacement de patch_oc_2022_08_29 par patch_oc_2022_09_04 (corrections diverses de la bibliothèque graphique intégrée).
On trouvera sur internet les paquets suivants : findlib-1.9.1.tar.gz, num-1.4.tar.gz, ocaml-4.14.0.tar.gz, ocamlbuild-0.14.0.tar.gz
(ou plus récents) à placer directement dans le dossier patch_oc_2022_09_04 .
Sous Windows 10 ou 11 on pourra après avoir installé MSYS2 et l'environnement MINGW64, utiliser le script bash build-mingw
en plaçant la ligne de commande MINGW64 sur le répertoire de ce script (entrer alors ./build-mingw).
(D’une autre façon, si CYGWIN64 est déjà installé, on peut utiliser le script build.bat dans une invite de commande Windows)

31/08/2022: Patch OCaml pour Windows 10 ou 11 x64
Le nouveau patch_oc_2022_08_29 peut être utilisé pour compiler OCaml avec les outils en ligne de commande les plus récents
MSYS2/MINGW64 ou Microsoft Visual Studio 2022, mais reste limité sous Windows 11 arm64 à l’émulation x64.
La bibliothèque graphique intégrée a été revue (en raison de “flexdll error: cannot relocate...” avec MSYS2/MINGW64)

20/08/2022: Caml Light pour Windows 11 arm64
- Nouveau cl75win pouvant utiliser le compilateur C++ de Microsoft Visual Studio 2022 Preview ciblant l'achitecture arm64.
- Nouveau patch caml light (2022/08/20) adapté à l’environnement MSYS2-CLANGARM64
- Distributions binaires Caml Light correspondantes dans camllight_win11_arm64.
MSYS2-CLANGARM64 donne une distribution binaire moins compacte mais plus rapide:
cf. exemple joint cube22.ml avec solutions optimales en nombre de quarts de tour ou demi-tours et quarts de tours.

16/08/2022: patch OCaml (2022/08/16)
Remplace patch_oc_2022_05_06: correction du chemin d'installation d'OCaml sous Windows.

06/05/2022: Distributions binaires Ocaml 4.14.0 pour Windows 10 et GNU/Linux et patch OCaml (2022/05/06)
(patch_oc_2022_05_06 adapté à Windows et ocaml-4.14.0)

04/05/2022: MacCaml version 7 avec OCaml 4.14.0

03/02/2022: WinCaml, Caml Light et OCaml pour GNU/Linux arm64/aarch64 très récents
WinCaml , Caml Light , OCaml pour GNU/Linux arm64/aarch64

02/02/2022: MacCaml versions 6 et 7
Rétablissement de l’action des touches "flèche gauche" et "flèche droite" sur la sélection du panneau d'édition,
action perdue en permettant le changement de couleur de fond de la sélection.
(Concerne les quatre archives MacCamlv7.0... et les deux archives MacCamlv6.0...).

23/01/2022: À propos de Windows 11
Tout ce qui fonctionne ci-dessous sous Windows 10 (x64) paraît fonctionner aussi sous Windows 11 :
directement sous Windows 11 (x64) ou en émulation x64 sous Windows 11 (arm64)
La distribution binaire OCaml 4.13.1 obtenue à partir de MSYS2-MINGW64 est plus rapide.

23/01/2022: Patch Caml Light
Adapté à gcc version 10 et suivantes (suppression des quelques définitions multiples)

19/12/2021: WinCaml pour GNU/Linux amd64 : (via Qt static)
Correction dans les exemples des noms de fichiers UTF-8.
Rappel: les bibliothèques graphiques Caml Light et OCaml adaptées à WinCaml utilisent les polices -misc-fixed-* (nomenclature XLFD).
Mais il peut arriver que celles-ci ne soient pas installées: à défaut de les trouver dans les dépôts de logiciels de la distribution GNU/Linux utilisée
on pourra installer celles qui sont proposées à l’adresse ucs-fonts.html dans l’archive ucs-fonts.tar.gz

06/12/2021: WinCaml 7.2 (GNU/Linux seulement)
- Code source de WinCaml :
Mise à jour du fichier de traduction qt_fr_FR.qm
Mise à jour des lanceurs pour l’intégration à Gnome 3 (utilisables aussi avec KDE et Cinnamon)
Suppression d’une capture de signaux unix inutile dans Qt.cpp
- WinCaml pour GNU/Linux amd64 : (via Qt static)
Recompilé sous Debian Wheezy en présence de libSM (session management)
pour obtenir une gestion convenable de sortie de session quand on a oublié de quitter WinCaml,
WinCaml devrait bien fonctionner avec la plupart des distributions GNU/Linux amd64 courantes...
les bibliothèques partagées requises semblant généralement présentes.
Lanceurs pour Gnome 3 mis à jour.

19/11/2021: WinCaml 7.2 et OCaml 4.13.1
Mise à jour des archives suivantes :
- Code source de WinCaml (correction de l’indenteur pour OCaml)
- 4 binaires natifs de WinCaml pour Windows xp sp3 (x86) et Windows 10 (x64)
- Dossier de WinCaml 7
- WinCaml pour Windows 10 x64 via Qt ou wxWidgets
- WinCaml pour GNU/Linux amd64
- Patch OCaml (2021/11/10) (adapté à OCaml 4.13.1)
- Distributions binaires OCaml 4.13.1 avec bibliothèque numérique Zarith pour Windows 10 x64
- Distribution binaire OCaml 4.13.1 avec bibliothèque numérique Zarith pour GNU/Linux amd64
Retrait des distributions binaires natives antérieures (4.08.1 et 4.12.0)

06/11/2021: MacCaml 7.0 pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
- MacCaml 7.0 Objc variante Objective C de MacCaml 7.0 Swift (remplacement des NSConnection par les NSXPCConnection,
même menu Fichiers, même fonctionnement des Préférences). MacCaml 7.0 objc et Maccaml 7.0 Swift sont interchangeables
- MacCaml 7.0 Swift : remplacement de l’indenteur pour OCaml
(nouvel indenteur plus proche de ceux de WinCaml et MacCaml Objc avec utilisation de la gestion Swift do-try-catch des erreurs)

26/10/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
- Petite correction de l’indenteur pour OCaml de MacCaml (concerne la syntaxe des modules)
- Remplacement de OCaml-4.12.0 par OCaml-4.13.1
- Zarith - OCaml (dossier exemples) :
-- Utilisation directe du module Z dans le test de Lucas-Lehmer des nombres de Mersenne
-- Ajout d’un exemple OCaml élémentaire de calcul de décimales de π
- Rubik's cubes 3x3x3 (dossier exemples) :
-- possibilité en saisissant (copiant) un cube d’orienter par quarts de tour les centres des faces en cliquant dessus.

23/05/2021: Patch Caml Light 2021/05/23
Remplace celui du 2021/05/05 (quelques corrections graphiques non essentielles du toplevel autonome caml_all_cocoa).
Mises à jour correspondantes de MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
(OCaml non concerné).

11/05/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
Modification des fichiers Alire : Pour utiliser X11 installer XQuartz-2.8.1
(Cette dernière version de XQuartz règle les problèmes de polices rencontrés avec XQuartz-2.8.0
et, semble-t-il, le problème sporadique de liaison signalé le 25/01/2021 de la version MacPorts)

06/05/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
Changements mineurs associés en partie à ceux du 05/05/2021

05/05/2021: Patches Caml Light et OCaml
Changements mineurs, pour macOS uniquement: remplacement des trois derniers patches (Caml Light, OCaml et OCaml graphique).

14/04/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64) et Patch Caml Light 2021/04/14
- Restauration du dossier arm64/camllight de l’archive MacCaml 7.0 Swift pour Mac M1 (erreur du 12/04/2021)
- Modification du traitement par MacCaml des événements MOUSEMOVE pour une synchronisation un peu plus satisfaisante (graphisme Cocoa)
- Remplacement dans le graphisme Cocoa de Caml Light des fonctions (get/set)PixelValue par celles d’OCaml:
l’archive patch caml-light (2021/04/14) remplace la précédente du 03/04/2021

12/04/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
Traitement d’un problème signalé depuis quelque temps par le compilateur (dangling pointer).

04/04/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
Remplacement des sous-dossiers arm64/camllight et amd64/camllight conformément au Patch Caml Light du 03/04/2021
On peut utiliser avec MacCaml le toplevel caml_all_cocoa en remplaçant dans le script MacCaml.app/Contents/Resources/camltoplevel _mac par _cocoa
Le toplevel caml_all_cocoa suit mieux les mouvements du pointeur mais son graphisme lui est propre: ses fenêtres n’appartiennent pas à MacCaml.
Cette mise à jour ne concerne pas OCaml.

03/04/2021: Patch Caml Light
PatchCl75_2021_04_03
remplace de l’archive PatchCl75 du 23/03/2021: renouvellement des sources des bibliothèques graphiques libcamlcocoa.a
et libgraphcocoa.a et du toplevel graphique autonome caml_all_cocoa (suppression des "deprecated NSConnection").
Les NSConnection ne sont plus utilisées que par le toplevel destiné à MacCaml 6 (dans le sous-dossier MAC/cocoaold).

25/03/2021: Distributions binaires amd64/x64 OCaml 4.12.0 avec bibliothèque numérique Zarith pour Gnu/Linux et Windows 10
(en remplacement des distributions 4.11.1).
- pour GNU/Linux: Placer le dossier amd64 contenu dans l'archive directement sous /opt puis indiquer l'emplacement /opt/amd64/ocaml-4.12.0 à WinCaml
(menu Caml->Nouvelle distribution... pour initier la manœuvre).
- pour Windows 10: Placer le dossier ocamlX64 contenu dans l'archive directement sous C:\ puis indiquer l'emplacement C:\ocamlX64\ocaml-4.12.0 à WinCaml
(menu Caml->Nouvelle distribution... pour initier la manœuvre), avec X = ms ou X = mgw au choix.

23/03/2021: MacCaml 7.0 Swift et Patches Caml Light et OCaml
- Remplacement des archives du 18/03/2021 en raison de dysfonctionnements des bibliothèques graphiques libcamlcocoa.a et libgraphcocoa et du toplevel graphique
autonome en ligne de commande caml_all_cocoa : ces trois éléments utilisent encore les "deprecated NSConnection" mais ne concernent pas MacCaml
- Nouveaux patches PatchCl75_2021_03_23 et patch_oc_2021_03_23 produisant à la demande des binaires adaptés à MacCaml 7, mais par ailleurs inchangés.

18/03/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
Remplacement des archives du 13/03/2021:
traitement d’une consommation de mémoire sans limite menant au bout d’un certain temps au crash de MacCaml
(problème léthal ne concernant que l’utilisation des bibliothèques graphiques Cocoa).

13/03/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
Remplacement des archives du 12/03/2021 suite à quelques erreurs de traitement des événements dans les bibliothèques graphiques Caml Cocoa de MacCaml
(cf. boutons "Composer" des Rubiks Cubes dans les exemples)

12/03/2021: MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) et Mac Intel (x86_64)
Cette nouvelle version 7.0 de MacCaml remplace la gestion des "Distributed Objects"
(classe NSConnection déclarée "deprecated") par la technologie "XPC" (classes NSXPCListener, NSXPCConnection, Mach Services...).
Elle est accompagnée de distributions binaires Caml Light et OCaml-4.12.0 adaptées à ce changement qui ne concerne en fait que la
relation entre MacCaml et les bibliothèques graphiques Cocoa.
Cf. le fichier Alire.txt dans l’archive adaptée à votre processeur (M1 ou x86_64) pour l'installation (un peu plus contraignante que les précédentes).
Elle remplace MacCaml 6.0 pour Mac M1.

23/02/2021: MacCaml 6.0 Swift pour Mac M1 (Apple Silicon)
Remplaçement de ocaml-4.12.0~beta2 par ocaml-4.12.0~rc1 dans l’archive MacCamlv6.0-swift-M1.dmg du 07/02/2021

07/02/2021: MacCaml
- MacCaml 6.0 Swift pour Mac M1 (Apple Silicon):
-- Correction des régions sensibles aux clics dans les barres de boutons des fenêtres
-- Augmentation de la fréquence de rafraîchissement des fenêtres des bibliothèques graphiques Cocoa (Caml Light et OCaml).
- MacCaml 6.0 et variante swift pour Mac x86_64:
-- Correction des régions sensibles aux clics dans les barres de boutons des fenêtres.

27/01/2021: MacCaml 6.0 Swift pour Mac M1 (Apple Silicon)
Remplaçement de ocaml-4.12.0~beta1 par ocaml-4.12.0~beta2 dans l’archive MacCamlv6.0-swift-M1.dmg du 25/01/2021
Remarque: En cas d’altération de la liaison avec XQuartz après une mise en veille prolongée, une solution est de quitter et relancer la session.

25/01/2021: MacCaml 6.0 Swift pour Mac M1 (Apple Silicon)
Remplaçement de ocaml-4.12.0~alpha3 par ocaml-4.12.0~beta1 dans l’archive MacCamlv6.0-swift-M1.dmg du 11/01/2021
Remarque: En cas d’altération de la liaison avec XQuartz après une mise en veille prolongée, une solution est de quitter et relancer la session.

11/01/2021: MacCaml 6.0 Swift pour Mac M1 (Apple Silicon)
Distribution plus légère n’utilisant plus Rosetta remplaçant celle du 25/12/2020
Pour pouvoir utiliser la bibliothèque graphique X11, installer XQuartz pour M1 Apple Silicon (arm64) :
une façon de faire, via MacPorts, est décrite dans le fichier Alire.txt de l'archive MacCamlv6.0-swift-M1.dmg

suite de l’historique

  • Patches de Caml-Light et OCaml utilisés par MacCaml, WinCaml, et JavaCaml:

    Pour compiler Caml Light sous Windows avec les outils en ligne de commande de Microsoft:  cl75win
    Pour compiler Caml-Light sous OS X, Windows et divers Linux:
    patch caml-light (2022/08/20)     patch caml-light (2022/01/23)
    patch caml-light (2021/05/23)     patch caml-light (2020/12/22)     patch caml-light (2020/09/30)     patch caml-light (2020/06/19)
    patch caml-light (2020/01/28)     patch caml-light (2019/09/27)     patch caml-light (2019/05/20)     patch caml-light (2018/08/06)
    patch caml-light (2018/06/06)     patch caml-light (2018/05/29)     patch caml-light (2018/05/22)     patch caml-light (2018/02/19)
    patch caml-light (2018/02/01)     patch caml-light (2018/01/29)     patch Caml Light 2017
    patch Caml Light précédent

    Pour compiler OCaml sous OS X, Windows et divers Linux:
    (le patch adapte à WinCaml, MacCaml et JavaCaml les bibliothèques graphiques X11 et Windows d’OCaml,
    fournit la bibliothèque graphique Cocoa de MacCaml et installe OCaml)
    patch OCaml (2022/09/04)
    patch OCaml (2022/08/16)     patch OCaml (2021/11/10)     patch OCaml (2021/05/05)
    patch OCaml (2020/12/22)     patch OCaml (2020/07/30)     patch OCaml (2020/03/30)
    patch OCaml (2019/11/11)     patch OCaml (2019/08/17)     patch OCaml (2019/07/04)
    patch OCaml (2019/03/16)     patch OCaml (2018/08/01)
    patch OCaml précédent         ancien Patch OCaml

    Pour obtenir à partir d’un OCaml déjà installé des bibliothèques graphiques adaptées à WinCaml, MacCaml ou JavaCaml
    à placer aux endroits prévus dans le répertoire de WinCaml ou JavaCaml, ou dans le bundle MacCaml
    (modifie les bibliothèques graphiques X11 et Windows d’OCaml et fournit la bibliothèque graphique Cocoa)
    patch graphique OCaml (2021/05/05)
    patch graphique OCaml (2020/07/12)     patch graphique OCaml (2020/04/03)     patch graphique OCaml (2019/09/28)
    patch graphique OCaml (2019/07/04)     patch graphique OCaml (2019/03/16)     patch graphique OCaml (2018/07/02)
    ancien patch graphique OCaml

    L'archive cl75unix.tar.gz et les archives ocaml-x.yy.z.tar.gz sont présentes ici : archives caml-light et ocaml


    On pourra, à défaut d’installer directement Caml Light ou OCaml à partir des sources, utiliser les distributions binaires natives suivantes.
    Mais pour une utilisation complète les outils de développement correspondants devraient aussi être installés.

            Binaires Caml Light pour Windows 11 arm64 : camllight_win11_arm64.zip

             Distribution binaire OCaml 4.13.1, pour Windows 10 ou 11, (179 Mo), munie de la bibliothèque numérique Zarith fondée sur MPIR,
             Distribution binaire OCaml 4.14.0, pour Windows 10 ou 11, (184,6 Mo), munie de la bibliothèque numérique Zarith fondée sur MPIR,
            obtenues à l’aide des outils de développement en ligne de commande de Microsoft de 2019
            (utilisable avec les outils de Visual Studio 2015 (vc 14.0) et suivants).

             Distribution binaire OCaml 4.13.1, pour Windows 10 ou 11, (205,5 Mo), munie de la bibliothèque numérique Zarith fondée sur GMP,
             Distribution binaire OCaml 4.14.0, pour Windows 10 ou 11, (211,5 Mo), munie de la bibliothèque numérique Zarith fondée sur GMP,
            obtenues à l’aide des outils de développement en ligne de commande MSY2-MINGW64 (x86_64-w64-mingw32-gcc 7.3.0).
    (fonctionne aussi avec la version 9.2.0 ...)
            Les dossiers ocamlms64 ou ocamlmgw64 contenus dans ces archives devraient être placés directement sous C:\
            De cette façon findlib devrait fonctionner correctement: par exemple avec le fichier contenu dans puissancesZarith.zip
    Windows 10 devrait être muni des outils de développement en langage C et assembleur correspondants.

    Distribution binaire OCaml 4.13.1 pour GNU/Linux amd64 (184,3 Mo) avec bibliothèque numérique Zarith fondée sur GMP
    Distribution binaire OCaml 4.14.0 pour GNU/Linux amd64 (190,1 Mo) avec bibliothèque numérique Zarith fondée sur GMP
    Placer le répertoire amd64 contenu dans l'archive tel quel sous /opt au premier niveau.
    Cette distribution binaire devrait fonctionner avec toute plateforme GNU/Linux munie de glibc 2.17
    ou plus récente et des outils de développement en langages C et assembleur, mis à part quelques problèmes de PIE
    (Position Independent Executable) contournables en passant -ccopt -no-pie à ocamlopt.
    Elle devrait donc convenir à la plupart des distributions GNU/LINUX actuelles.
    Elle est incompatible, sauf bytecode, avec Debian Wheezy (__secure_getenv remplacé par secure_getenv dans glibc 2.17)

    Distribution binaire OCaml 4.14.0 pour Debian 11 (bullseye) arm64 (aarch64) (203 Mo) avec bibliothèque numérique Zarith fondée sur GMP
    Placer le répertoire arm64 contenu dans l'archive tel quel sous /opt au premier niveau.
    Devrait convenir aux distributions GNU/Linux récentes.


  • MacCaml, pour l’utilisation interactive de Caml-Light et OCaml sous Mac OS X:

    Important : MacCaml n’étant pas une application signée, elle sera, après téléchargement sous Sierra, High Sierra, Mojave ou Catalina, affublée de l’attribut étendu com.apple.quarantine. Bien qu'il soit possible d'autoriser le lancement de MacCaml après un clic droit sur son icône, ceci peut ne pas suffire pour éviter son lancement avec déplacement, ce qui perturbera son fonctionnement (en raison de changements dans les chemins). Une solution est alors de supprimer l’attribut com.apple.quarantine comme suit: Supposons par exemple le dossier MacCaml contenant MacCaml.app placé directement dans le dossier /Applications. Entrer alors dans terminal la commande sudo xattr -r -d -s com.apple.quarantine /Applications/MacCaml (qui demande le mot de passe administrateur). Il faudra peut-être aussi jeter le fichier de configuration actuel $HOME/Library/Preferences/com.jmm.MacCaml.plist puis se déconnecter et se reconnecter, voire redémarrer pour disposer complètement de MacCaml.

    Télécharger la version 7.0 de MacCaml 7.0 Swift pour Mac M1 (Apple Silicon) (233,5 Mo) (macOS Big Sur et Monterey)
    Ne pas oublier, après téléchargement de l’archive, montage et duplication sur le bureau, de sortir le dossier dupliqué
    MacCamlv7.0-swift-M1 de sa mise en quarantaine (comme indiqué ci-dessus).
    Ce dossier contient, en plus de MacCaml, des distributions binaires Caml light et OCaml-4.14.0 complètes
    pour processeur M1 (Apple Silicon arm64) dans le dossier arm64.
    Placer le dossier arm64 directement dans /opt et le dossier MacCaml directement dans /Applications.
    Placer le fichier com.jmm.maccamlxpc.plist dans le sous-dossier LaunchAgents de la bibliothèque personnelle (créer ce dossier s'il est absent).
    Optionnel: Pour le graphisme X11, installer XQuartz-2.8.1
    Plus de détails sur l’installation dans le fichier Alire.txt à la racine du dossier dupliqué MacCamlv7.0-swift-M1

    Télécharger la version 7.0 de MacCaml 7.0 Objc pour Mac M1 (Apple Silicon) (8,1 Mo) (macOS Big Sur et Monterey)
    Cet exemplaire de MacCaml peut remplacer celui qui est fourni dans l’archive précédente
    (Télécharger et installer d’abord l’archive précédente)

    Télécharger la version 7.0 de MacCaml 7.0 Swift pour Mac Intel (x86_64) (234,4 Mo) (macOS Mojave ou plus récent),
    Ne pas oublier, après téléchargement de l’archive, montage et duplication sur le bureau, de sortir le dossier dupliqué
    MacCamlv7.0-swift-intel de sa mise en quarantaine (comme indiqué ci-dessus).
    Ce dossier contient, en plus de MacCaml, des distributions binaires Caml light et OCaml-4.14.0 complètes
    pour processeur Intel (x86_64) dans le dossier amd64.
    Placer le dossier amd64 directement dans /opt et le dossier MacCaml directement dans /Applications.
    Placer le fichier com.jmm.maccamlxpc.plist dans le sous-dossier LaunchAgents de la bibliothèque personnelle (créer ce dossier s'il est absent).
    Optionnel: Pour le graphisme X11, installer XQuartz-2.8.1
    Plus de détails sur l’installation dans le fichier Alire.txt à la racine du dossier dupliqué MacCamlv7.0-swift-intel

    Télécharger la version 7.0 de MacCaml 7.0 Objc pour Mac Intel (x86_64) (8,1 Mo) (macOS Mojave ou plus récent)
    Cet exemplaire de MacCaml peut remplacer celui qui est fourni dans l’archive précédente
    (Télécharger et installer d’abord l’archive précédente)

    Télécharger la version 6.0 de MacCaml (14 Mo), ou sa variante Swift (18,6 Mo) fondée sur le langage Swift,
    toutes deux adaptées aux modes clair et sombre de Mojave, pour Mojave, Catalina et Big Sur uniquement (sur architecture x86_64 ou M1 avec Rosetta)
    ou encore MacCamlv5.3 pour Lion, Mountain Lion,... (5,8 Mo)

    Pour utiliser OCaml, on pourra placer le dossier ocaml-4.11.1 contenu dans l’archive ocaml-mac-4111.tar.gz (160 Mo) directement dans /opt
    ou bien
    si on a déjà installé OCaml 4.x.y, par exemple à partir de la distribution en code source: ocaml,
    modifier le début du script bash MacCaml.app/Contents/Resources/camltoplevel pour indiquer à MacCaml l’emplacement d’OCaml
    et si x < 11 opter pour OCaml X11 dans les préférences de MacCaml pour le graphisme X11 d’OCaml qui suppose l’installation de XQuartz

    (Pour compiler et installer OCaml on peut utiliser le patch OCaml qui fournit en plus la bibliothèque graphique Cocoa associée
    à placer dans MacCaml.app/Contents/Resources/ocaml/cocoa, ce qui permet d’éviter X11)

    Télécharger la version 4.7.2 de MacCaml (5,8 Mo)
    pour Tiger (10.4.11 ppc 32 bits), Leopard (10.5.8 intel 32 bits), Snow Leopard (10.6.8 intel 64 bits)... et Mac OS Sierra
    MacCaml 4.7.2 fonctionne avec ocaml 3.11.0, 3.11.1, 3.11.2, 3.12.0, 3.12.1 ou 4.0x.y:
    (installer de préférence OCaml à partir de la distribution en code source: OCaml)
    (On pourra utiliser le patch OCaml)

            MacCaml contient des fichiers binaires obtenus à partir des distributions sources officielles Caml-Light et OCaml pour unix disponibles ici:

    Distributions sources officielles Caml-Light et OCaml

            On pourra aussi essayer la distribution binaire OCaml suivante équipée de la bibliothèque numérique Zarith fondée sur gmp:

    distribution binaire ocaml-4.08.1 pour MacOS: El Capitan ... Catalina (183 Mo)
    Placer le contenu de l’archive directement dans /opt
    (utilisable aussi avec WinCaml via Qt pour Mac OS (Lion 10.7.5 et suivants))


  • WinCaml pour l’utilisation interactive de Caml-Light et OCaml sous Windows 2000 Pro, XP, Windows 7 ou 8 ou 10:

          Pour installer WinCaml 7 (7.1 pour Windows 2000, 7.2 pour Windows XP et Windows 10):
          1. Télécharger et dézipper celle des trois archives suivantes qui paraît le mieux convenir (x86 = 32 bits, x64 = 64 bits)

    Télécharger  WinCaml 7 (win2000)                 WinCaml 7 (x86)                 WinCaml 7 (x64)                

               (ou au choix celle des trois suivantes respectivement équivalentes aux trois précédentes)

    Télécharger  WinCaml 7 (mingw win2000)     WinCaml 7 (mingw x86)     WinCaml 7 (mingw x64)    

               Elle contient l’exécutable WinCaml.exe
          2. Télécharger et dézipper l’archive suivante contenant le dossier WinCaml7

    Télécharger le dossier de WinCaml 7 (4,9 Mo)

    On pourra utiliser 7zip pour décompresser l’archive WinCaml7.zip si la décompression par Windows altère les chemins
    (regarder dans les dossiers WinCaml7\exemples\Caml Light\unicode et WinCaml7\exemples\OCaml\unicode)

          3. Placer ce dossier WinCaml7 où bon vous semble   (ne pas utiliser le dossier WinCaml d’une installation antérieure à sa place)
          4. Placer l’exécutable WinCaml.exe, et éventuellement Scintilla.dll, dans ce dossier WinCaml7 au premier niveau
          5. Optionnel: si aucune distribution OCaml n’est encore installée, on pourra placer le répertoire ocaml contenu dans l’une des archives ocaml32.zip (152 Mo) ou ocaml64.zip (152 Mo) directement sous C:\           Ces archives proposent des distributions bytecode 4.08.1 d’OCaml
              On pourra aussi essayer les distributions OCaml 4.14.0 32 bits et 64 bits respectivement contenues dans les archives ocamlms.zip (160 Mo) et ocamlms64.zip (160 Mo) : placer le répertoire ocamlms (resp. ocamlms64) directement sous C:\
              Ces distributions bytecode peuvent nécessiter (en cas d’absence de MSVCR100.dll) l’installation d’un des paquets suivants:

    Redistribuable Visual Studio 2010 VC++

               Compilées sous Windows 10, elles devraient fonctionner sous Windows XP sp3 et suivants, même si depuis OCaml 4.07.0 le fichier win32.c demande _WIN32_WINNT=0x0600 (Vista).
               (Au moins ocaml32.zip et ocamlms.zip).
              On pourra aussi placer le dossier camllight contenu dans une des deux archives suivantes directement sous C:\ (ou ailleurs...) et indiquer son chemin à WinCaml (menu Caml->Nouvelle distribution... de WinCaml) pour que WinCaml utilise son contenu au lieu du Caml Light moins complet proposé dans le dossier de WinCaml 7.

    camllight32.zip      camllight64.zip

    WinCaml inclut des fichiers binaires obtenus à partir des distributions source de Caml Light.
    Le graphisme est emprunté aux distributions OCaml pour Windows.
    Les distributions sources officielles Caml Light et OCaml sont téléchargeables ici:
    Distributions sources officielles Caml-Light et OCaml.
    WinCaml dispose à peu près des mêmes fonctions que MacCaml.

          Les versions 5.8, 5.9, 6.0, 6.1 et 7.0 de WinCaml sont encore disponibles.
          WinOcaml et l’ancien WinCaml sont toujours disponibles: WinOCaml , Ancien WinCaml, ainsi que WinCaml 4.5

  • WinCaml 7 (7.2) pour Debian Gnu Linux 11 (Bullseye) arm64 et autres distributions GNU/Linux arm64 récentes via Qt:

    WinCaml , Caml Light , OCaml pour GNU/Linux arm64 (208,6 Mo)
    Devrait convenir aux toutes dernières distributions Debian, Ubuntu, Kali, Fedora, openSUSE et Archlinux
    (cf. le fichier 'Alire' dans l’archive pour plus de détails)

  • WinCaml 7 (7.2) pour Windows 64, Debian Gnu Linux amd64 (Wheezy: 7, Jessie: 8, Stretch: 9, Buster: 10, Bullseye 11) et Mac OS via wxWidgets ou Qt:

    WinCaml pour Windows x64
    WinCaml pour GNU/Linux amd64 : devrait convenir aux installations par défaut des distributions GNU/Linux suivantes:
    Debian Wheezy, Jessie, Stretch, Buster, Bullseye, Ubuntu 16.04 ou 19.04, Mint Cinnamon Serena ou Tina, OpenSuse 42.2 ou 15.1, Mageia 5.1 ou 7.1 ...
    WinCaml via Qt pour Mac OS (Lion 10.7.5 et suivants) (139 Mo)
    La présence à part des bibliothèques wxWidgets et Qt n’est en principe pas nécessaire (lien statique).

    Distribution bytecode Caml Light pour GNU/Linux amd64 (1,8 Mo)
    Distribution bytecode OCaml 4.08.1 pour GNU/Linux amd64 (128 Mo)
    (placer de préférence le dossier contenu dans l'archive dans /opt.)
    Ces distributions bytecode adaptées à WinCaml devraient convenir au moins aux distributions GNU/Linux citées ci-dessus.


    Mise en œuvre de WinCaml pour Linux x86_64 avec tp-algo

    Aperçus de WinCaml pour Linux via wxWidgets sous tp-algo de l’E.N.S. Lyon (cliquer sur la miniature):




    Pour Linux il faudra peut-être rendre exécutables les binaires wincamlinit, WinCaml et lintoplevel64
    WinCaml pour Debian GNU/Linux amd64 peut fonctionner avec d’autres distributions Gnu/Linux amd64 assez récentes.
    Pour Windows, installer en cas d’absence de MSVCR110.dll ou de MSVCP110.dll le paquet Microsoft Visual C++ 2012 redistributable (x64)
    Pour Mac OS, veiller à ce que XQuartz
    soit installé

  • Code source C++ complet de WinCaml 7, (Windows, Mac OS X et Linux):

    Cette archive contient aussi les éléments constitutifs du dossier de WinCaml 7 pour les trois systèmes
    et des scripts de construction à adapter éventuellement à la ligne de commande de l’environnement de programmation

    Code source C++ de WinCaml 7.2 (5,4 Mo)

    On pourra utiliser 7zip pour décompresser l’archive WinCaml7.x-src_*.zip si la décompression par Windows altère les chemins
    (regarder dans les dossiers WinCaml7.x-src_*\caml\exemples\Caml Light\unicode et WinCaml7.x_*\caml\exemples\OCaml\unicode)
    et se servir des patches de Caml Light et OCaml pour obtenir des distributions Caml Light et OCaml adaptées à WinCaml.


  • JavaCaml, pour l’utilisation interactive de Caml-Light et OCaml sous Linux, Mac OS X, ou Windows:

    Préférer les archives zip sous Windows (à ouvrir avec 7-zip) et les archives tar.gz sous Linux et Mac OS (pour préserver les chemins unicodes).

    Télécharger JavaCaml 5.2 (zip)    JavaCaml 5.2 (tar.gz)

    JavaCaml fonctionne avec la machine virtuelle (jre) d’Oracle en version 8
    Pour l’utilisation de Caml Light et OCaml avec JavaCaml, voir les fichiers Alire dans les archives

    Code source de JavaCaml 5.2(zip)    Code source de JavaCaml 5.2 (tar.gz)

    Les versions 4.9 et 5.0 de JavaCaml sont encore disponibles:
        JavaCaml 4.9     Code source de JavaCaml 4.9
        JavaCaml 5.0     Code source de JavaCaml 5.0


  • MacCaml est une application Cocoa. WinCaml est dans les versions inférieures à 5 une application MFC (Microsoft Foundation Classes) et dans la version 5 une application Win32/Win64, ou une application Qt ou wxWidgets; assez proche de MacCaml, WinCaml fonctionne sous Windows 2000 professionnel, Windows XP et Windows 7 ou 8 ou 10 et dans ses versions Qt et wxWidgets sous OS X et Linux. JavaCaml est une application Java Swing apparentée aux précédentes fonctionnant sous Mac OS X, Windows et Linux équipés de la machine virtuelle Java d’Oracle (jre: Java Runtime Environment).


  • Capture d’écran de WinCaml 5.7 sous Debian Wheezy Live (tp-algo E.N.S. Lyon) dans une machine virtuelle Parallels 4 Go sous OS X Yosemite: MacBook Pro Retina 15 pouces 16 Go 1920 x 1200 (cliquer dessus pour obtenir une image plus précise):



  • Capture d’écran de WinCaml 5.7 sous Debian Wheezy Live (tp-algo E.N.S. Lyon) sur PC portable ASUS intel core 2 duo 4 Go 1366 x 768 (cliquer dessus pour obtenir une image plus précise):



  • Captures d’écran de MacCaml 4.4 (cliquer dessus pour obtenir une image plus précise):



  • Capture d’écran de WinCaml 4.3 sous Windows XP (cliquer dessus pour obtenir une image plus précise):



  • Capture d’écran de JavaCaml sous Debian Gnu/Linux avec environnement graphique Gnome (cliquer dessus pour obtenir une image plus précise):



  • Dossier Caml sur les automates finis et langages rationnels:

    Télécharger l’archive AFetLR.zip (215 Ko)


  • Rubik's cubes et leurs groupes de mouvements en Caml Light et OCaml:


    Placer le dossier rubikscubes/interfaces de l'archive dans le dossier de MacCaml ou WinCaml au premier niveau.
    Quelques explications sont jointes dans le fichier Alire.txt et les fichiers mouvements.pdf de l'archive.
    Le dossier rubikscubes/OCaml est une adaptation bon marché à OCaml du dossier rubikscubes/Caml-light.

    Télécharger l’archive rubikscubes.zip (937 Ko)

    L’archive suivante permet d’obtenir à partir de Caml Light des applications autonomes pour Mac OS, Windows et Linux
    (elle contient les applications autonomes pour Mac OS Mojave ou Catalina, pour Windows XP SP2 et pour Windows 10)

    Télécharger l’archive rubikscubes1.zip (2,3 Mo)

  • Mode Sombre de Mojave et MacCaml:


  • WinCaml 7.1 sous Windows 10: