This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SK-AM64B: Steps for Processor SDK Linux §3.2.1 aarch64-oe-linux-gcc: not found results in failures

Part Number: SK-AM64B

Tool/software:

When going through the steps in 3.2.1.3.1, the definition/locaiton for SDK_INSTALL_DIR appears to be missing/not defined.

james@james-virtual-machine:~/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/board-support/ti-linux-kernel-6.6.32+git-ti$ sudo apt install git xz-utils build-essential flex bison bc libssl-dev libncurses-dev
[sudo] password for james: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
bc is already the newest version (1.07.1-3build1).
bison is already the newest version (2:3.8.2+dfsg-1build1).
build-essential is already the newest version (12.9ubuntu3).
flex is already the newest version (2.6.4-8build2).
xz-utils is already the newest version (5.2.5-2ubuntu1).
git is already the newest version (1:2.34.1-1ubuntu1.11).
libncurses-dev is already the newest version (6.3-2ubuntu0.1).
libssl-dev is already the newest version (3.0.2-0ubuntu1.18).
0 upgraded, 0 newly installed, 0 to remove and 25 not upgraded.
james@james-virtual-machine:~/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/board-support/ti-linux-kernel-6.6.32+git-ti$ ls
arch        certs    crypto         fitImage-its-am64xx-evm  init      Kbuild   lib        MAINTAINERS  modules.builtin          Module.symvers  README   scripts   System.map  virt       vmlinux.o
block       COPYING  Documentation  fs                       io_uring  Kconfig  LICENSES   Makefile     modules.builtin.modinfo  net             rust     security  tools       vmlinux    vmlinux.symvers
built-in.a  CREDITS  drivers        include                  ipc       kernel   linux.bin  mm           modules.order            patches         samples  sound     usr         vmlinux.a
james@james-virtual-machine:~/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/board-support/ti-linux-kernel-6.6.32+git-ti$ export CROSS_COMPILE_64="${SDK_INSTALL_DIR}/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/aarch64-oe-linux/aarch64-oe-linux-"
james@james-virtual-machine:~/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/board-support/ti-linux-kernel-6.6.32+git-ti$ export SYSROOT_64="${SDK_INSTALL_DIR}/linux-devkit/sysroots/aarch64-oe-linux"
james@james-virtual-machine:~/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/board-support/ti-linux-kernel-6.6.32+git-ti$ export CC_64="${CROSS_COMPILE_64}gcc --sysroot=${SYSROOT_64}"
james@james-virtual-machine:~/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/board-support/ti-linux-kernel-6.6.32+git-ti$ export CROSS_COMPILE_32="${SDK_INSTALL_DIR}/k3r5-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-oe-eabi/arm-oe-eabi-"
james@james-virtual-machine:~/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/board-support/ti-linux-kernel-6.6.32+git-ti$ make ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_64" distclean
  CLEAN   arch/arm64/boot
  CLEAN   arch/arm64/crypto
  CLEAN   arch/arm64/kernel/pi
  CLEAN   arch/arm64/kernel/vdso
  CLEAN   arch/arm64/kernel
  CLEAN   certs
  CLEAN   drivers/firmware/efi/libstub
  CLEAN   drivers/scsi
  CLEAN   drivers/tty/vt
  CLEAN   drivers/video/logo
  CLEAN   init
  CLEAN   kernel
  CLEAN   lib/raid6
  CLEAN   lib
  CLEAN   net/wireless
  CLEAN   usr
  CLEAN   .
/bin/sh: 1: /linux-devkit/sysroots/x86_64-arago-linux/usr/bin/aarch64-oe-linux/aarch64-oe-linux-gcc: not found
/bin/sh: 1: /linux-devkit/sysroots/x86_64-arago-linux/usr/bin/aarch64-oe-linux/aarch64-oe-linux-gcc: not found
  CLEAN   vmlinux.symvers modules.builtin modules.builtin.modinfo .vmlinux.export.c
  CLEAN   scripts/basic
  CLEAN   scripts/dtc
  CLEAN   scripts/kconfig
  CLEAN   scripts/mod
  CLEAN   scripts
  CLEAN   include/config include/generated arch/arm64/include/generated .config .config.old .version Module.symvers

Doing a quick

grep -Rnw '<processor_SDK_install_directory>' -e 'SDK_INSTALL_DIR'

results in 3 hits, one of which is a definition

/home/james/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/linux-devkit/sysroots/x86_64-arago-linux/usr/share/cmake/SDKToolchainConfig.cmake.template:1:set(SDK_INSTALL_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../../..")
/home/james/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/linux-devkit/sysroots/x86_64-arago-linux/usr/share/cmake/SDKToolchainConfig.cmake.template:2:set(HOST_SYSROOT    "${SDK_INSTALL_DIR}/sysroots/@OECORE_SDK_SYS")
/home/james/ti-processor-sdk-linux-am64xx-evm-10.00.07.04/linux-devkit/sysroots/x86_64-arago-linux/usr/share/cmake/SDKToolchainConfig.cmake.template:3:set(TARGET_SYSROOT  "${SDK_INSTALL_DIR}/sysroots/@OECORE_TARGET_SYS")

  • doing an export for SDK_INSTALL_DIR, then re-doing the initial exports looks to resolve the matter

    example

    export SDK_INSTALL_DIR="/home/james/ti-processor-sdk-linux-am64xx-evm-10.00.07.04"
    export CROSS_COMPILE_64="${SDK_INSTALL_DIR}/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/aarch64-oe-linux/aarch64-oe-linux-"
    export SYSROOT_64="${SDK_INSTALL_DIR}/linux-devkit/sysroots/aarch64-oe-linux"
    export CC_64="${CROSS_COMPILE_64}gcc --sysroot=${SYSROOT_64}"
    export CROSS_COMPILE_32="${SDK_INSTALL_DIR}/k3r5-devkit/sysroots/x86_64-arago-linux/usr/bin/arm-oe-eabi/arm-oe-eabi-"
    

    I'm guessing that it is possible/probable that the SDK_INSTALL_DIR is set via running another script or binary that I've somehow missed.