building python 3.10.1 on jetpack 4.5.1 and the jetson xavier nx

This is a follow-up to my last Python build and installation back in February ( https://arcanesciencelab.wordpress.com/2021/02/14/building-python-3-9-1-on-jetpack-4-5-and-the-jetson-xavier-nx/ ). That post has all the directions for setting up a build environment including installation of all packages. This time I downloaded the source to Python 3.10.1, unpacked it, and built it. I then performed an alt-install as before. Everything went well until the very end, when the alt-install process spit this out (see all the highlighted lines):

WARNING: Value for scheme.headers does not match. Please report this to <https://github.com/pypa/pip/issues/10151>
distutils: /usr/local/include/python3.10/UNKNOWN
sysconfig: /ssd/jetson/Python-3.10.1/Include/UNKNOWN
WARNING: Additional context:
user = False
home = None
root = '/'
prefix = None
Looking in links: /tmp/tmplaxd5qzj
Processing /tmp/tmplaxd5qzj/setuptools-58.1.0-py3-none-any.whl
Processing /tmp/tmplaxd5qzj/pip-21.2.4-py3-none-any.whl
Installing collected packages: setuptools, pip
  WARNING: Value for scheme.headers does not match. Please report this to <https://github.com/pypa/pip/issues/10151>
  distutils: /usr/local/include/python3.10/setuptools
  sysconfig: /ssd/jetson/Python-3.10.1/Include/setuptools
  WARNING: Value for scheme.headers does not match. Please report this to <https://github.com/pypa/pip/issues/10151>
  distutils: /usr/local/include/python3.10/pip
  sysconfig: /ssd/jetson/Python-3.10.1/Include/pip
Successfully installed pip-21.2.4 setuptools-58.1.0
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

I have never had a problem before now, and I suspect it’s all to do with Python 3.10. I went looking for an explanation and fix ( see https://stackoverflow.com/questions/67244301/warning-value-for-scheme-data-does-not-match-when-i-try-to-update-pip-or-inst for example), but the explanation(s) are confusing, with the general consensus as “don’t worry about it.” Which I consider crap.

So far 3.10.1 seems to work, with one notable exception: you can’t install PyQt6, as there is no qt6-default support package, and PyQt6 won’t build without it. You’re thus stuck with PyQt5.

Determining Various Version Numbers

This section is primarily for me to remember for the future. I’m tired of looking it up.

To determine what version of Ubuntu you’re running:

$ cat /etc/os-release 
NAME="Ubuntu"
VERSION="18.04.6 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.6 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
$

To determine what version of Jetpack you’re running:

$ sudo apt-cache show nvidia-jetpack
Package: nvidia-jetpack
Version: 4.5.1-b17
Architecture: arm64
Maintainer: NVIDIA Corporation
...