Guide de compilation multiplateforme pour Tile38 : Windows et macOS

Tile38 est une base de données géospatiale haute performance conçue pour le suivi en temps réel et la gestion de barrières géographiques (geofencing). Compiler cette solution depuis les sources est une excellente méthode pour assurer la compatibilité avec votre environnement de développement spécifique sur macOS ou Windows.

Prérequis techniques

Avant de lancer le processus de build, assurez-vous de disposer des outils suivants :

  • Go (1.18+) : Le runtime Go est indispensable pour la compilation.
  • Git : Pour récupérer le code source du dépôt.
  • Outils de build :
    • Windows : Un environnement GCC, tel que MSYS2 ou MinGW.
    • macOS : Les outils de ligne de commande Xcode (xcode-select --install).

Clonage du dépôt source

Récupérez le code source officiel via la commande suivante :

git clone https://github.com/tidwall/tile38.git
cd tile38

Procédure sur Windows

Pour compiler sous Windows, configurez vos variables d'environnement afin de supporter les modules Go :

set GO111MODULE=on
set CGO_ENABLED=1

Utiilsez ensuite les cibles définies dans le Makefile pour générer les exécutables :

mingw32-make server cli

Les fichiers tile38-server.exe et tile38-cli.exe seront générés à la racine. Pour valider l'installation, lancez le serveur : .\tile38-server.exe.

Procédure sur macOS

Sur macOS, le processus est simplifié grâce à la gestion native des outils Unix :

make server cli

Une fois la compilation terminée, vous pouvez tester la connexion au serveur immédiatement :

./tile38-cli
> PING
PONG

Optimisation et automatisation

Pour les builds de production, le projet inclut un script d'automatisation situé dans le dossier scripts/. Vous pouvez générer des archives prêtes à être déployées sur différentes architectures en utilisant :

make dist

Si vous rencontrez des lenteurs lors de la phase de compilation, vous pouvez exploiter la parallélisation des cœurs de votre processeur avec l'option -j :

make -j8 server

Dépannage courant

  • Erreurs CGO : Si la compilation échoue à cause de CGO, vérifiez que votre compilateur GCC est correctement référencé dans votre variable d'environnement PATH.
  • Conflits de versions : Assurez-vous d'utiliser une version récente de Go, car des fonctionnalités de modules récentes sont requises par les dépendances de Tile38.
  • Vérification : En cas de comportement inattendu, consultez les tests unitaires intégrés dans le dossier internal/ pour vérifier que les composants critiques sont correctement construits.

Étiquettes: Tile38 golang Géospatial Geofencing compilation

Publié le 3 juillet à 18h27