Skip to main content

Installation Guide (Linux)

This guide provides detailed instructions on how to deploy and run MipMapEngine SDK on Linux systems.

📋 System Requirements​

ComponentRequirement
Operating SystemUbuntu 22.04
CPUIntel/AMD x86_64 8 cores or more
Memory32 GB RAM
GPUNVIDIA GPU (CUDA support)
Graphics DriverNVIDIA Driver >= 525.60.33
CUDACUDA 12.8
Disk Space1 TB available space

🚀 Installation Steps​

Step 1: Check Hardware and Drivers​

Check GPU Information​

# Check if NVIDIA GPU is installed
lspci | grep -i nvidia

# Check NVIDIA driver version
nvidia-smi

If drivers are not installed or version is too low:

# Ubuntu install NVIDIA driver
sudo apt update
sudo apt install nvidia-driver-***

Step 2: Install Virbox Driver​

Virbox is the SDK's encryption tool and must be installed.

# Install Virbox user tools
https://lm.virbox.com/tools.html

Step 3: Activate License​

# Use SDK provided license_engine to activate
./license_engine -bind YOUR-LICENSE-KEY

# Query license status
./license_engine -enum license_info.json
cat license_info.json

Step 4: Extract SDK​

# Extract SDK package
tar -xzvf MipMapEngine_SDK_Linux_v4.0.tar.gz

# View directory structure
cd MipMapEngine_SDK
ls -la
# Should contain:
# - bin/ # Executables and dynamic libraries
# - gdal_data/ # GDAL data files
# - docs/ # User manual
# - examples/ # Example scripts

Step 5: Configure Environment Variables​

# Set SDK path (replace with actual path)
export MIPMAP_SDK_PATH=/path/to/MipMapEngine_SDK

# Set library path
export LD_LIBRARY_PATH=$MIPMAP_SDK_PATH/bin:$LD_LIBRARY_PATH

# Recommend adding to ~/.bashrc or ~/.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

Step 6: Check Dependencies​

# Check executable dependencies
ldd $MIPMAP_SDK_PATH/lib/reconstruct_full_engine

# If libraries are missing, install system packages
# Ubuntu
apt-get update && apt-get install -y libgl1-mesa-dev libgeos-dev libgomp1 liblcms2-2 libquadmath0 libjbig0 libdeflate0 libopenexr25 libproj22

Step 7: Verify Installation​

Create test configuration file 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"
}
]
}

Run test:

# Enter SDK directory
cd $MIPMAP_SDK_PATH/bin

# Run reconstruction
./reconstruct_full_engine -reconstruct_type 0 -task_json test.json

# Check output
ls -la ./test_output/

🔧 Common Issues​

1. Missing libmipmap_engine.so​

Error message:

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

Solution:

# Ensure library path is correct
export LD_LIBRARY_PATH=$MIPMAP_SDK_PATH/bin:$LD_LIBRARY_PATH

Error message:

CUDA error: no CUDA-capable device is detected

Solution:

# Check GPU drivers
nvidia-smi

# Update drivers
sudo apt update
sudo apt upgrade nvidia-driver-*

4. Library Version Conflicts​

Some system libraries may conflict with SDK-provided libraries:

# Identify conflicting libraries
ldd -v $MIPMAP_SDK_PATH/bin/reconstruct_full_engine

# Temporarily remove conflicting libraries
mv $MIPMAP_SDK_PATH/libconflict.so $MIPMAP_SDK_PATH/libconflict.so.bak

# Use system libraries
# System will automatically load from /usr/lib

Next Steps​


Tip: Linux deployment may require adjustments due to distribution and environment differences. It's recommended to verify in a test environment before deploying to production.