Cannot build containers, python_install.sh fails (Orin AGX 64GB, JetPack 6.1)

Cross-post from github, more details over there (but happy to answer questions here as well).

I’ve got a brand new Orin AGX developer kit (64GB) and used the SDK Manager to download and flash the latest Ubuntu (22.04) and JetPack SDK (6.1).

I’m trying to build a container (I need diffusers and transformers for my application code), however when I run the build command from the README (actually a truncated one, just trying to build pytorch without transformers and ros) it bombs out in the “install python” step:

jane@ubuntu:~/Code/jetson-containers$ jetson-containers build --name=my_container pytorch
Namespace(packages=['pytorch'], name='my_container', base='', multiple=False, build_flags='', build_args='', package_dirs=[''], list_packages=False, show_packages=False, skip_packages=[''], skip_errors=False, skip_tests=[''], test_only=[''], simulate=False, push='', logs='', verbose=False, no_github_api=False)
-- L4T_VERSION=36.4.0
-- JETPACK_VERSION=5.1
-- CUDA_VERSION=12.6
-- PYTHON_VERSION=3.10
-- LSB_RELEASE=22.04 (jammy)
-- Building containers  ['build-essential', 'pip_cache:cu126', 'cuda:12.6', 'cudnn', 'python', 'numpy', 'cmake', 'onnx', 'pytorch']
-- Building container my_container:r36.4.0-build-essential

... snip ...

+ curl -sS https://bootstrap.pypa.io/get-pip.py
+ python3.10
Looking in indexes: http://jetson.webredirect.org/jp5/cu126
ERROR: Could not find a version that satisfies the requirement pip (from versions: none)
ERROR: No matching distribution found for pip
+ curl -sS https://bootstrap.pypa.io/pip/3.6/get-pip.py
+ python3.6
/tmp/install_python.sh: line 27: python3.6: command not found
curl: (23) Failure writing output to destination
The command '/bin/sh -c /tmp/install_python.sh' returned a non-zero code: 127
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/jane/Code/jetson-containers/jetson_containers/build.py", line 112, in <module>
    build_container(args.name, args.packages, args.base, args.build_flags, args.build_args, args.simulate, args.skip_tests, args.test_only, args.push, args.no_github_api)
  File "/home/jane/Code/jetson-containers/jetson_containers/container.py", line 147, in build_container
    status = subprocess.run(cmd.replace(_NEWLINE_, ' '), executable='/bin/bash', shell=True, check=True)
  File "/usr/lib/python3.10/subprocess.py", line 526, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command 'DOCKER_BUILDKIT=0 docker build --network=host --tag my_container:r36.4.0-python --file /home/jane/Code/jetson-containers/packages/build/python/Dockerfile --build-arg BASE_IMAGE=my_container:r36.4.0-cudnn --build-arg PYTHON_VERSION_ARG="3.10" /home/jane/Code/jetson-containers/packages/build/python 2>&1 | tee /home/jane/Code/jetson-containers/logs/20241002_212941/build/my_container_r36.4.0-python.txt; exit ${PIPESTATUS[0]}' returned non-zero exit status 127.

It’s failing in packages/build/python/install.sh in the “install pip” part of the script. I tried hacking around and fixing the python issue, and got a bit further, but I don’t know how the jetson+python setup works well enough to fix it for sure so I thought I’d ask here.

Is the jetson-containers tool still the recommended way to build this stuff? I’m using current-gen hardware, with the latest SDK (afaict), so it seems like it should work? Happy to be pointed in other directions, though - I must confess I found it a bit confusing to know what’s the latest/official(ish) way to do this (pull images from nvcr.io? build them with this tool? follow these docs, or perhaps others on the NVIDIA website?).

One other thing I noticed: jtop (and apt show nvidia-jetpack)reports that the board is running JetPack 6.1, but the jetson-containers output detects it as JETPACK_VERSION=5.1. While that doesn’t seem to be the issue that’s derailing me, it doesn’t seem good.

A bit more output from jtop if it’s helpful.


--------------------- PLATFORM -------------------------
Machine: aarch64
System: Linux
Distribution: Ubuntu 22.04 Jammy Jellyfish
Release: 5.15.148-tegra
Python: 3.10.12
-------------------- JETSON RAW OUTPUT -----------------
------------------
Path: /etc/nv_tegra_release
# R36 (release), REVISION: 4.0, GCID: 37537400, BOARD: generic, EABI: aarch64, DATE: Fri Sep 13 04:36:44 UTC 2024
------------------
Path: /sys/firmware/devicetree/base/model
NVIDIA Jetson AGX Orin Developer Kit
------------------
Path: /proc/device-tree/nvidia,boardids
No such file or directory
------------------
Path: /proc/device-tree/compatible
nvidia,p3737-0000+p3701-0005nvidia,p3701-0005nvidia,tegra234
------------------
Path: /proc/device-tree/nvidia,dtsfilename
No such file or directory
------------------

Hi,

It looks like dusty-nv already provides help on the GitHub post.
Could you check the suggestion there instead?

Thanks.

Thanks for your help, and yep - dustynv did reply on GitHub.