SkillAgentSearch skills...

Open3DWSL

Build Open3D for python & C++ packages with cuda support on Windows

Install / Use

/learn @Spinkoo/Open3DWSL
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Open3D GPU Build on Windows (WSL) – Install Guide

<p align="center"> <img src="images/wsl.png" /> </p> Do you need to build Open3D from source with GPU support on Windows? No judging I suppose you have your reasons the same way I did when I was navigating through forums to avoid building directly on windows.

Ideally, you would install it on WSL (Ubuntu) for maximum support, which you could use later on for your Python virtual environment to run your codes.

<p align="center"> <img src="images/cover.png" /> </p>

Let's get started! :D


1. Update and Upgrade

sudo apt update
sudo apt upgrade

2. Install Python

sudo apt install python3
sudo apt install --reinstall python3-pip
sudo apt install python3-venv
sudo apt install python3-dev

3. Install C Compilers

sudo apt install g++-11
sudo apt install clang-15 libc++-15-dev libc++abi-15-dev
sudo apt install gcc
sudo apt install build-essential

4. Create a python Virtual Environment

python3 -m venv <env-name>
source env-name/bin/activate

5. Install CUDA 12.4 (with toolkit option checked)

mkdir cuda && cd cuda
wget https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda_12.4.1_550.54.15_linux.run
sudo sh cuda_12.4.1_550.54.15_linux.run

Add CUDA to your path:

export PATH=/usr/local/cuda-12.4/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

6. Check CUDA Tools

which cicc
# if cicc is not found:
sudo ln -s /usr/local/cuda-12.4/nvvm/bin/cicc /usr/bin/cicc

nvcc --version
# Should report 12.4 or similar

which ptxas
ptxas --version
# Should also be 12.x
# if it fails:
sudo ln -s /usr/local/cuda-12.4/bin/ptxas /usr/bin/ptxas

7. Install CMake

You could either install a recent version of CMake or download the already tested v3.29.3 (stable on WSL).

To use CMake locally:

mkdir cmake_build && cd cmake_build
wget https://github.com/Kitware/CMake/releases/download/v3.29.3/cmake-3.29.3-linux-x86_64.tar.gz
mkdir -p ~/opt && tar -xzf cmake-3.29.3-linux-x86_64.tar.gz -C ~/opt
echo 'export PATH=$HOME/opt/cmake-3.29.3-linux-x86_64/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

Check version:

cmake --version
# should print cmake version 3.29.3

8. Install essentials

sudo apt install libglew-dev libxkbcommon-dev xorg-dev libglu1-mesa-dev libwayland-dev


9. Build Open3D from Source

git clone https://github.com/isl-org/Open3D && cd Open3D
mkdir build && cd build

CUDA Architecture Table

| SM Version | GPU Family | Examples | |------------|----------------|---------------------------------| | sm_75 | Turing | RTX 2080, RTX 2070, T4 | | sm_86 | Ampere | RTX 30xx series (3080, 3090) | | sm_89 | Ada Lovelace | RTX 40xx series (4080, 4090) | | sm_80 | A100 (datacenter GPU) | NVIDIA A100 |

  • For sm_75 use the flag: CMAKE_CUDA_ARCHITECTURES="75"
  • For multiple builds (e.g., sm_75 and 86): CMAKE_CUDA_ARCHITECTURES="75;86"

10. CMake Build Command

cmake -DCMAKE_CXX_COMPILER="/usr/bin/g++-11" -DBUILD_CUDA_MODULE=ON -DBUILD_PYTHON_MODULE=ON -DPYTHON_EXECUTABLE=$(which python) -D CUDA_TOOLKIT_ROOT_DIR="/usr/local/cuda-12.4" -DCMAKE_INSTALL_PREFIX=~/open3d_install -D CUDA_TOOLKIT_ROOT_DIR="/usr/local/cuda-12.4" -D CMAKE_CUDA_ARCHITECTURES="75" -DBUILD_GUI=ON -DCMAKE_CUDA_COMPILER=/usr/local/cuda-12.4/bin/nvcc ..

11. Build

Either limit the number of jobs or increase the WSL swap memory

make -j2

12. Make the pip wheel & install it

Once the build is complete and you are inside your python virtual environment, run

pip install setuptools
make install-pip-package

13. Minimalist test to check cuda :

python -c "import open3d; print(open3d.core.cuda.is_available())"
<p align="center"> <img src="images/test.PNG" /> </p>

Check the base sample & This demo from Open3D examples for simple usage

<p align="center"> <img src="images/demo.PNG" /> </p>

Acknwoledgement

Open3D

View on GitHub
GitHub Stars8
CategoryCustomer
Updated5d ago
Forks0

Languages

Python

Security Score

90/100

Audited on Apr 2, 2026

No findings