Skip to content

Build failure on Jetson Thor (ARM64) – guidance on correct build steps + future support #7375

@vavisc

Description

@vavisc

Checklist

Steps to reproduce the issue

Hello,

I’m trying to build Open3D from source on an NVIDIA Jetson Thor (ARM64) inside the official Isaac ROS container:

nvcr.io/nvidia/isaac/ros:noble-ros2_jazzy_d3e84470d576702a380478a513fb3fc6-arm64

My main requirements:

  • Offscreen rendering (required)
  • GUI support (optional)
  • CUDA support (optional)

The build reproducibly fails around ~34% with a generic:

make: *** [Makefile:156: all] Error 2

No clear error message appears, even with Filament and OpenBLAS built from source.

My questions:

  1. What is the correct / recommended way to build Open3D (with offscreen renderer, ideally with CUDA) on Jetson Thor?
  2. Is official Jetson Thor support planned for future releases?
  3. Will ARM64 pip wheels be provided for Thor / JetPack images?

Any guidance or known limitations would be greatly appreciated. Thanks!

Error message

root@localhost:/opt/third_party/Open3D# mkdir build
root@localhost:/opt/third_party/Open3D# cd build/
root@localhost:/opt/third_party/Open3D/build# cmake ..
-- Setting build type to Release as none was specified.
-- CMAKE_BUILD_TYPE is set to Release.
-- ccache found at /usr/bin/ccache
-- Downloading third-party dependencies to /opt/third_party/Open3D/3rdparty_downloads
CMake Deprecation Warning at CMakeLists.txt:200 (cmake_policy):
  The OLD behavior for policy CMP0072 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


-- The C compiler identification is GNU 13.3.0
-- The CXX compiler identification is GNU 13.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Open3D 0.19.0+1e7b17438
-- Found Python3: /usr/bin/python3 (found suitable version "3.12.3", minimum required is "3.6") found components: Interpreter Development Development.Module Development.Embed 
-- Performing Test FLAG_fstack_protector_strong
-- Performing Test FLAG_fstack_protector_strong - Success
-- Performing Test FLAG_Wformat
-- Performing Test FLAG_Wformat - Success
-- Performing Test FLAG_Wformat_security
-- Performing Test FLAG_Wformat_security - Success
-- Performing Test FLAG_Wl__z_noexecstack
-- Performing Test FLAG_Wl__z_noexecstack - Success
-- Performing Test FLAG_Wl__z_relro__z_now
-- Performing Test FLAG_Wl__z_relro__z_now - Success
-- Performing Test FLAG_pie
-- Performing Test FLAG_pie - Success
-- Performing Test FLAG____CONFIG_Release__LINKER___strip_debug_
-- Performing Test FLAG____CONFIG_Release__LINKER___strip_debug_ - Success
-- Using security hardening compiler flags: $<$<COMPILE_LANGUAGE:CUDA>:-Xcompiler=-fstack-protector-strong,-Wformat,-Wformat-security>;$<$<COMPILE_LANGUAGE:CXX>:-fstack-protector-strong;-Wformat;-Wformat-security>
-- Using security hardening linker flags: $<$<COMPILE_LANGUAGE:CUDA>:-Xcompiler=-Wl,-z,noexecstack,-Wl,-z,relro,-z,now,$<$<STREQUAL:$<TARGET_PROPERTY:TYPE>,EXECUTABLE>:-pie>,$<$<CONFIG:Release>:LINKER:--strip-debug>>;$<$<COMPILE_LANGUAGE:CXX>:-Wl,-z,noexecstack;-Wl,-z,relro,-z,now;$<$<STREQUAL:$<TARGET_PROPERTY:TYPE>,EXECUTABLE>:-pie>;$<$<CONFIG:Release>:LINKER:--strip-debug>>
-- Using security hardening compiler definitions: _FORTIFY_SOURCE=2
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE  
-- Using installed third-party library 3rdparty_threads 
-- Found OpenMP_C: -fopenmp (found version "4.5") 
-- Found OpenMP_CXX: -fopenmp (found version "4.5") 
-- Found OpenMP: TRUE (found version "4.5")  
-- Using installed third-party library 3rdparty_openmp 
-- Building with OpenMP
-- Using installed third-party library 3rdparty_x11 
-- Building third-party library JPEG from source
-- Looking for a ASM_NASM compiler
-- Looking for a ASM_NASM compiler - /usr/bin/yasm
-- The ASM_NASM compiler identification is YASM
-- Found assembler: /usr/bin/yasm
-- NASM assembler enabled
-- libturbojpeg: WITH_CRT_DLL=OFF
-- pybind11 v2.13.1 
-- Found PythonInterp: /usr/bin/python3 (found suitable version "3.12.3", minimum required is "3.7") 
-- Found PythonLibs: /usr/lib/aarch64-linux-gnu/libpython3.12.so
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- Building third-party library Filament from source
-- Filament can only be built with Clang >= 7
-- Using /usr/bin/clang++ to build Filament
-- Using CLANG_LIBDIR: /usr/lib/llvm-18/lib
-- Filament C++ libraries: /usr/lib/llvm-18/lib/libc++.so.1 /usr/lib/llvm-18/lib/libc++abi.so
-- Found OpenGL: /usr/lib/aarch64-linux-gnu/libOpenGL.so   
-- Using installed third-party library 3rdparty_opengl 
-- Building OpenBLAS with LAPACK from source
-- gfortran found at 
-- OPENBLAS_INCLUDE_DIR: /opt/third_party/Open3D/build/openblas/include/openblas/
-- OPENBLAS_LIB_DIR /opt/third_party/Open3D/build/openblas/lib
-- OPENBLAS_LIBRARIES: openblas
-- Checking for one of the modules 'hwloc'
-- Looking for getcontext
-- Looking for getcontext - found
-- IPO enabled
-- The tbbbind_2_5 target will be configured using the HWLOC 2.10.0
CMake Warning at 3rdparty/find_dependencies.cmake:1857 (message):
  Intel IPP disabled: Unsupported Platform.
Call Stack (most recent call first):
  CMakeLists.txt:534 (include)


-- open3d_sycl_target_sources(core): PRIVATE
-- PYPI_PACKAGE_NAME: open3d
-- ================================================================================
-- Open3D 0.19.0 Configuration Summary
-- ================================================================================
-- Enabled Features:
--   OpenMP .................................. ON
--   Headless Rendering ...................... OFF
--   Azure Kinect Support .................... OFF
--   Intel RealSense Support ................. OFF
--   CUDA Support ............................ OFF
--   SYCL Support ............................ OFF
--   ISPC Support ............................ OFF
--   Build GUI ............................... ON
--   Build WebRTC visualizer ................. OFF
--   Build Shared Library .................... OFF
--   Build Unit Tests ........................ OFF
--   Build Examples .......................... ON
--   Build Python Module ..................... ON
--   Build Jupyter Extension ................. OFF
--   Build TensorFlow Ops .................... OFF
--   Build PyTorch Ops ....................... OFF
--   Build Benchmarks ........................ OFF
--   Bundle Open3D-ML ........................ OFF
--   Force GLIBCXX_USE_CXX11_ABI= ............ 1
-- ================================================================================
-- Third-Party Dependencies:
--   Assimp .................................. yes (build from source)
--   BLAS .................................... yes (build from source)
--   curl .................................... yes (build from source)
--   Eigen3 .................................. yes (build from source)
--   filament ................................ yes (build from source)
--   fmt ..................................... yes (build from source)
--   GLEW .................................... yes (build from source)
--   GLFW .................................... yes (build from source)
--   googletest .............................. no
--   imgui ................................... yes (build from source)
--   ipp ..................................... no
--   JPEG .................................... yes (build from source)
--   jsoncpp ................................. yes (build from source)
--   liblzf .................................. yes (build from source)
--   msgpack ................................. yes (build from source)
--   nanoflann ............................... yes (build from source)
--   OpenGL .................................. yes
--   PNG ..................................... yes (build from source)
--   qhullcpp ................................ yes (build from source)
--   librealsense ............................ no
--   TBB ..................................... yes (build from source)
--   tinyfiledialogs ......................... yes (build from source)
--   TinyGLTF ................................ yes (build from source)
--   tinyobjloader ........................... yes (build from source)
--   VTK ..................................... yes (build from source)
--   WebRTC .................................. no
--   ZeroMQ .................................. yes (build from source)
-- ================================================================================
-- Configuring done (15.9s)
-- Generating done (0.2s)
-- Build files have been written to: /opt/third_party/Open3D/build

root@localhost:/opt/third_party/Open3D/build# make -j$(nproc)

...

-- Installing: /opt/third_party/Open3D/build/openblas/share/cmake/OpenBLAS/OpenBLASTargets-release.cmake
[ 34%] Completed 'ext_openblas'
[ 34%] Built target ext_openblas
make: *** [Makefile:156: all] Error 2

Open3D, Python and System information

- Operating system: Ubuntu 24.04
- Python version: Python 3.12.3 (main, Aug 14 2025, 17:47:21) [GCC 13.3.0] / output from `import sys; print(sys.version)`
- Open3D version: output from python: None (cant install it but should be 19.0)
- System architecture: arm64 (Jetson Thor)
- Is this a remote workstation?: no
- How did you install Open3D?: build from source
- Compiler version (if built from source): #gcc 7.5 / clang 7.0

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions