Skip to content

Dependencies

Dependencies

Official HA-VLN repository: https://github.com/F1y1113/HA-VLN

This page provides the dependency setup for HA-VLN.

The original repository README was written around a Python 3.7 and CUDA 11.1 era stack. For broader compatibility on newer Linux distributions and newer NVIDIA GPUs, these docs use a Python 3.8 based environment as the default path.

System Packages

Install the common HA-VLN system dependencies first:

sudo apt-get update
sudo apt-get install -y --no-install-recommends \
    libjpeg-dev libglm-dev libgl1 libegl1-mesa-dev mesa-utils \
    xorg-dev freeglut3-dev libcrypt-dev

Python Environment

Use conda to create and manage the environment:

conda create -n havlnce python=3.8 gcc_linux-64=11 gxx_linux-64=11 sysroot_linux-64=2.17 -c conda-forge -y
conda activate havlnce

If you plan to compile GPU-dependent extensions, export the conda toolchain before continuing:

export CC=$CONDA_PREFIX/bin/x86_64-conda-linux-gnu-gcc
export CXX=$CONDA_PREFIX/bin/x86_64-conda-linux-gnu-g++
export CUDA_HOME=$CONDA_PREFIX

Core Python Packages

Install a modern CUDA-compatible stack for development:

# Full CUDA toolkit for compilation and runtime compatibility
conda install -c "nvidia/label/cuda-11.8.0" cuda-toolkit -y

# HA-VLN-compatible PyTorch stack
pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 --index-url https://download.pytorch.org/whl/cu118

FAQ: Why do these docs use Python 3.8 instead of the README's Python 3.7?

The short answer is compatibility.

  • the original repository README reflects an older Python 3.7 era environment
  • newer GPUs may require a newer CUDA and PyTorch combination than the Python 3.7 path typically supports well
  • these docs therefore use Python 3.8 as the default installation path for broader compatibility on modern hardware

If you are working on older hardware with an older toolchain, the original Python 3.7 path may still be possible, but it is not the default recommendation in this documentation.