Facing compilation error while building SPE Firmware of release 32.5

Hello,
For kernel building, please file a new thread.
Let’s focus on SPE firmware building in this topic.

After downloading https://launchpad.net/gcc-arm-embedded/4.8/4.8-2014-q3-update/+download/gcc-arm-none-eabi-4_8-2014q3-20140805-linux.tar.bz2, you should extract the package and set the path correct.

Take my script as an example, the path is set by export CROSS_COMPILE=“${HOME}/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”

And the cross-compiler should look like:
$ ll ${HOME}/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-*
-rwxr-xr-x 1 chenjian chenjian 706600 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-addr2line*
-rwxr-xr-x 2 chenjian chenjian 734508 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ar*
-rwxr-xr-x 2 chenjian chenjian 1220908 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-as*
-rwxr-xr-x 2 chenjian chenjian 682080 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-c++*
-rwxr-xr-x 1 chenjian chenjian 705640 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-c++filt*
-rwxr-xr-x 1 chenjian chenjian 679840 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-cpp*
-rwxr-xr-x 1 chenjian chenjian 23728 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-elfedit*
-rwxr-xr-x 2 chenjian chenjian 682080 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-g++*
-rwxr-xr-x 2 chenjian chenjian 678464 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc*
-rwxr-xr-x 2 chenjian chenjian 678464 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-4.8.4*
-rwxr-xr-x 1 chenjian chenjian 23664 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-ar*
-rwxr-xr-x 1 chenjian chenjian 23632 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-nm*
-rwxr-xr-x 1 chenjian chenjian 23632 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-ranlib*
-rwxr-xr-x 1 chenjian chenjian 305276 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcov*
-rwxr-xr-x 1 chenjian chenjian 4079604 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gdb*
-rwxr-xr-x 1 chenjian chenjian 772072 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gprof*
-rwxr-xr-x 4 chenjian chenjian 1009260 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ld*
-rwxr-xr-x 4 chenjian chenjian 1009260 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ld.bfd*
-rwxr-xr-x 2 chenjian chenjian 718504 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-nm*
-rwxr-xr-x 2 chenjian chenjian 879688 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-objcopy*
-rwxr-xr-x 2 chenjian chenjian 1060776 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-objdump*
-rwxr-xr-x 2 chenjian chenjian 734508 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ranlib*
-rwxr-xr-x 1 chenjian chenjian 373956 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-readelf*
-rwxr-xr-x 1 chenjian chenjian 707752 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-size*
-rwxr-xr-x 1 chenjian chenjian 707016 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-strings*
-rwxr-xr-x 2 chenjian chenjian 879688 8月 5 2014 /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-strip*

In your error log, the file does not exist. Most probably, the path is not correct. You can check it.

br
ChenJian

Please check the below logs:

ayyappan@ubuntu-22:~/nvidia/SPE/l4t-rt/rt-aux-cpu-demo$ cat compile.sh

#!/bin/bash

set -e

export TOP=“${HOME}/nvidia/SPE/l4t-rt”

export CROSS_COMPILE=“${HOME}/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”

export FREERTOS_DIR=${TOP}/FreeRTOSV8.1.2/FreeRTOS/Source

export FREERTOS_COMMON_DIR=${TOP}/freertos-common

To build for Jetson AGX

make clean

make -j8 bin_t19x && make docs

ayyappan@ubuntu-22:~/nvidia/SPE/l4t-rt/rt-aux-cpu-demo$ ls -l ${HOME}/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-*

-rwxr-xr-x 1 root root 706600 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-addr2line

-rwxr-xr-x 2 root root 734508 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ar

-rwxr-xr-x 2 root root 1220908 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-as

-rwxr-xr-x 2 root root 682080 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-c++

-rwxr-xr-x 1 root root 705640 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-c++filt

-rwxr-xr-x 1 root root 679840 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-cpp

-rwxr-xr-x 1 root root 23728 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-elfedit

-rwxr-xr-x 2 root root 682080 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-g++

-rwxr-xr-x 2 root root 678464 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc

-rwxr-xr-x 2 root root 678464 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-4.8.4

-rwxr-xr-x 1 root root 23664 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-ar

-rwxr-xr-x 1 root root 23632 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-nm

-rwxr-xr-x 1 root root 23632 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc-ranlib

-rwxr-xr-x 1 root root 305276 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcov

-rwxr-xr-x 1 root root 4079604 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gdb

-rwxr-xr-x 1 root root 772072 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gprof

-rwxr-xr-x 4 root root 1009260 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ld

-rwxr-xr-x 4 root root 1009260 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ld.bfd

-rwxr-xr-x 2 root root 718504 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-nm

-rwxr-xr-x 2 root root 879688 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-objcopy

-rwxr-xr-x 2 root root 1060776 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-objdump

-rwxr-xr-x 2 root root 734508 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-ranlib

-rwxr-xr-x 1 root root 373956 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-readelf

-rwxr-xr-x 1 root root 707752 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-size

-rwxr-xr-x 1 root root 707016 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-strings

-rwxr-xr-x 2 root root 879688 Aug 5 2014 /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-strip

ayyappan@ubuntu-22:~/nvidia/SPE/l4t-rt/rt-aux-cpu-demo$ ./compile.sh

RMDIR t18x

RMDIR t19x

RMDIR docs

mkdir -p /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x

CC clk.c

make: “/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc: No such file or directory

make: *** [Makefile:370: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/clk.o] Error 127

make: *** Waiting for unfinished jobs…

CC init_padctrl.c

make: “/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc: No such file or directory

make: *** [Makefile:370: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/init_padctrl.o] Error 127

CC spe-clk.c

make: “/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc: No such file or directory

make: *** [Makefile:370: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/spe-clk.o] Error 127

ayyappan@ubuntu-22:~/nvidia/SPE/l4t-rt/rt-aux-cpu-demo$ ./compile.sh

RMDIR t18x

RMDIR t19x

RMDIR docs

mkdir -p /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x

CC clk.c

CC init_padctrl.c

make: *** No rule to make target ‘“/home/ayyappan/nvidia/SPE/l4t-rt”/freertos-common/code-common/armv7-exceptions.S’, needed by ‘/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/armv7-exceptions.o’. Stop.

make: *** Waiting for unfinished jobs…

make: “/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc: No such file or directory

make: *** [Makefile:370: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/clk.o] Error 127

make: “/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc: No such file or directory

make: *** [Makefile:370: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/init_padctrl.o] Error 127

CC spe-clk.c

make: “/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc: No such file or directory

make: *** [Makefile:370: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/spe-clk.o] Error 127

CC spe-pm-sequencer.c

make: “/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc: No such file or directory

make: *** [Makefile:370: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/t19x/spe-pm-sequencer.o] Error 127

ayyappan@ubuntu-22:~/nvidia/SPE/l4t-rt/rt-aux-cpu-demo$

Hello,
The error is different from former error log.

Why an extra ‘"’ is in the path?
/home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”gcc

It should call /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc

Maybe the character changes when copy/paste from browser?
Please check the script.

br
ChenJian

What do you see from:

ls -l /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-*

I think this extra is coming from the below env set which you gave
export CROSS_COMPILE=${HOME}/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-

I see below: for ls -l /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-*

No.
Correct ‘"’ should not be included in string define.

There are lots of reference in internet, like
Bash Scripting - How to Initialize a String - GeeksforGeeks

You can add some debug code in the script, like echo to check the string. That should not be hard.

br
Chenjian

what is “No. and Correct ‘”’ should not be included in string define" ???

You have suggested the below and I just changed the path.

building-pc:~/Work/jetson_sdk/32.5/spe-fw.orig$ cat spe-firmware-build.sh
#!/bin/bash
set -e
export TOP=“${HOME}/Work/jetson_sdk/32.5/spe-fw.orig/l4t-rt”
export CROSS_COMPILE=“${HOME}/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-”
export FREERTOS_DIR=${TOP}/FreeRTOSV8.1.2/FreeRTOS/Source
export FREERTOS_COMMON_DIR=${TOP}/freertos-common

To build for Jetson AGX

cd ${TOP}/rt-aux-cpu-demo && make -j8 bin_t19x && make docs

Hello,
You can add some echo to check.
Like the link I listed, the string definition in bash script like:

a=“Hello”

echo $a

The result should be
Hello

Not
Hello"

You can also remove ‘"’ in the script.

br
Chenjian

I removed the “” from the script and check but the problem is same. I think that is not the issue.

Do I need to try this in sudo mode?

You can check the image below:

Hello,
That’s a good start, and at least, makefile is called correct bin.

You can try following:

  1. execute the xxx/xx-gcc directly, and check whether it has the same problem.
  2. run ldd xxx/xxx-gcc to check whether some so is missed.

br
Chenjian

This “gcc-arm-none-eabi-10.3-2021.10” tool chain is not giving the env issue but its throwing the other errors.

arch64-binfmt-P: Could not open ‘/lib/ld-linux-aarch64.so.1’: No such file or directory
aarch64-binfmt-P: Could not open ‘/lib/ld-linux-aarch64.so.1’: No such file or directory
aarch64-binfmt-P: Could not open ‘/lib/ld-linux-aarch64.so.1’: No such file or directory
aarch64-binfmt-P: Could not open ‘/lib/ld-linux-aarch64.so.1’: No such file or directory
aarch64-binfmt-P: Could not open ‘/lib/ld-linux-aarch64.so.1’: No such file or directory
aarch64-binfmt-P: Could not open ‘/lib/ld-linux-aarch64.so.1’: No such file or directory

ayyappan@ubuntu-22:~/nvidia/SPE/l4t-rt/rt-aux-cpu-demo$ ldd /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc
not a dynamic executable
ayyappan@ubuntu-22:~/nvidia/SPE/l4t-rt/rt-aux-cpu-demo$

what’s the host PC environment?
Mine is Ubuntu 18.04. And I think 20.04 should also be good.

That looks like host PC environment issue, not SPE compiling issue.
Cross toolchain should be able to run first.

Correct result should look like:
building-pc:~/Work/jetson_sdk/32.5/spe-fw$ ldd /home/chenjian/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc
linux-gate.so.1 (0xf7f28000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7dee000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7c12000)
/lib/ld-linux.so.2 (0xf7f2a000)

building-pc:~/Work/jetson_sdk/32.5/spe-fw$ ${HOME}/Tools/gcc-arm-none-eabi-4_8-2014q3/bin/arm-none-eabi-gcc
arm-none-eabi-gcc: fatal error: no input files
compilation terminated.

br
ChenJian

I fixed the issue by reading this post:

Now its compiling. :) Thanks for your efforts.

Hi Chen Jian,

What is this below docs error?? Do I really need to build docs or should I remove from makefile?

mkdir -p /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/docs
DOXYGEN /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/doc/doxyfile
make: *** [Makefile:375: /home/ayyappan/nvidia/SPE/l4t-rt/rt-aux-cpu-demo/out/docs/.stamp] Error 127

Regards,
Ayyappan R

You can skip doc building and refer to online SPE doc.

Or you can check why doxygen fails.
Correct result should be:

building-pc:~/Work/jetson_sdk/32.5/spe-fw$ doxygen
error: Doxyfile not found and no input file specified!
Doxygen version 1.8.13
Copyright Dimitri van Heesch 1997-2015

You can use doxygen in a number of ways:

  1. Use doxygen to generate a template configuration file:
    doxygen [-s] -g [configName]

    If - is used for configName doxygen will write to standard output.

  2. Use doxygen to update an old configuration file:
    doxygen [-s] -u [configName]

  3. Use doxygen to generate documentation using an existing configuration file:
    doxygen [configName]

    If - is used for configName doxygen will read from standard input.

  4. Use doxygen to generate a template file controlling the layout of the
    generated documentation:
    doxygen -l [layoutFileName.xml]

  5. Use doxygen to generate a template style sheet file for RTF, HTML or Latex.
    RTF: doxygen -w rtf styleSheetFile
    HTML: doxygen -w html headerFile footerFile styleSheetFile [configFile]
    LaTeX: doxygen -w latex headerFile footerFile styleSheetFile [configFile]

  6. Use doxygen to generate a rtf extensions file
    RTF: doxygen -e rtf extensionsFile

If -s is specified the comments of the configuration items in the config file will be omitted.
If configName is omitted `Doxyfile’ will be used as a default.

-v print version string

br
ChenJian

Mine is Ubuntu 22.04.

We can close this thread. Its compiling now.

BTW, Ubunut 22.04 is good for compiling 32.7.3 BSP?

Though this is solved, I am curious, was this always running in a VM? That would explain a lot when files are present with correct permissions, but they cannot be found…it implies two different environments.

Btw, in theory, if you have the right release of cross tools and libraries to link against (no libraries needed if it is bare metal), then it should work with an Ubuntu 22.04 host PC. However, there is a lot going on, and I would recommend 18.04 if you run into any issues. The cross tools are known to work on 18.04 for the 32.7.3 BSP, but it would be a matter of testing and luck if they can be installed in 22.04 and work as expected.

see this Facing the below errors while building the kernel for Javier NX module - #21 by ayyappan.rathinam thread.

One of nvidia employee mentioned that it wont work as expected in ubuntu 22.04. I believe all nvidia guys are using ubuntu 18.04

YEs. I am using VM always. and nvidia is recommending dual os. I mean ubuntu 18.04