Aller au contenu principal

Guide d'installation (Linux)

Ce guide fournit des instructions détaillées sur la façon de déployer et d'exécuter MipMapEngine SDK sur les systèmes Linux.

📋 Configuration requise

Configuration recommandée

ComposantExigence
Système d'exploitationUbuntu 22.04
CPUIntel/AMD x86_64 8 cœurs ou plus
Mémoire32 Go de RAM
GPUNVIDIA GPU (support CUDA)
Pilote graphiqueNVIDIA Driver >= 525.60.33
CUDACUDA 12.8
Espace disque1 To d'espace disponible

🚀 Étapes d'installation

Étape 1 : Vérifier le matériel et les pilotes

Vérifier les informations GPU

# Vérifier si NVIDIA GPU est installé
lspci | grep -i nvidia

# Vérifier la version du pilote NVIDIA
nvidia-smi

Si les pilotes ne sont pas installés ou si la version est trop basse :

# Ubuntu installer le pilote NVIDIA
sudo apt update
sudo apt install nvidia-driver-***

Étape 2 : Installer le pilote Virbox

Virbox est l'outil de chiffrement du SDK et doit être installé.

# Installer les outils utilisateur Virbox
https://lm.virbox.com/tools.html

Étape 3 : Activer la licence

# Utiliser license_engine fourni par le SDK pour activer
./license_engine -bind YOUR-LICENSE-KEY

# Interroger l'état de la licence
./license_engine -enum license_info.json
cat license_info.json

Étape 4 : Extraire le SDK

# Extraire le package SDK
tar -xzvf MipMapEngine_SDK_Linux_v4.0.tar.gz

# Afficher la structure du répertoire
cd MipMapEngine_SDK
ls -la
# Devrait contenir :
# - bin/ # Exécutables et bibliothèques dynamiques
# - gdal_data/ # Fichiers de données GDAL
# - docs/ # Manuel utilisateur
# - examples/ # Scripts d'exemple

Étape 5 : Configurer les variables d'environnement

# Définir le chemin SDK (remplacer par le chemin réel)
export MIPMAP_SDK_PATH=/path/to/MipMapEngine_SDK

# Définir le chemin de la bibliothèque
export LD_LIBRARY_PATH=$MIPMAP_SDK_PATH/bin:$LD_LIBRARY_PATH

# Recommandé d'ajouter à ~/.bashrc ou ~/.profile
echo 'export MIPMAP_SDK_PATH=/path/to/MipMapEngine_SDK' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$MIPMAP_SDK_PATH/bin:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

Étape 6 : Vérifier les dépendances

# Vérifier les dépendances de l'exécutable
ldd $MIPMAP_SDK_PATH/lib/reconstruct_full_engine

# Si des bibliothèques manquent, installer les packages système
# Ubuntu
apt-get update && apt-get install -y libgl1-mesa-dev libgeos-dev libgomp1 liblcms2-2 libquadmath0 libjbig0 libdeflate0 libopenexr25 libproj22

Étape 7 : Vérifier l'installation

Créer un fichier de configuration de test test.json :

{
"working_dir": "./test_output",
"gdal_folder": "/path/to/MipMapEngine_SDK/gdal_data",
"input_image_type": 1,
"resolution_level": 3,
"coordinate_system": {
"type": 2,
"epsg_code": 4326
},
"image_meta_data": [
{
"id": 1,
"path": "/path/to/test/image1.jpg"
},
{
"id": 2,
"path": "/path/to/test/image2.jpg"
}
]
}

Exécuter le test :

# Entrer dans le répertoire SDK
cd $MIPMAP_SDK_PATH/bin

# Exécuter la reconstruction
./reconstruct_full_engine -reconstruct_type 0 -task_json test.json

# Vérifier la sortie
ls -la ./test_output/

🔧 Problèmes courants

1. libmipmap_engine.so manquant

Message d'erreur :

error while loading shared libraries: libmipmap_engine.so: cannot open shared object file

Solution :

# S'assurer que le chemin de la bibliothèque est correct
export LD_LIBRARY_PATH=$MIPMAP_SDK_PATH/bin:$LD_LIBRARY_PATH

2. Erreurs liées à CUDA

Message d'erreur :

CUDA error: no CUDA-capable device is detected

Solution :

# Vérifier les pilotes GPU
nvidia-smi

# Mettre à jour les pilotes
sudo apt update
sudo apt upgrade nvidia-driver-*

4. Conflits de version de bibliothèque

Certaines bibliothèques système peuvent entrer en conflit avec les bibliothèques fournies par le SDK :

# Identifier les bibliothèques en conflit
ldd -v $MIPMAP_SDK_PATH/bin/reconstruct_full_engine

# Supprimer temporairement les bibliothèques en conflit
mv $MIPMAP_SDK_PATH/libconflict.so $MIPMAP_SDK_PATH/libconflict.so.bak

# Utiliser les bibliothèques système
# Le système chargera automatiquement depuis /usr/lib

Prochaines étapes


Conseil : Le déploiement Linux peut nécessiter des ajustements en raison des différences de distribution et d'environnement. Il est recommandé de vérifier dans un environnement de test avant de déployer en production.