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.

PROCESSOR-SDK-AM65X: error: unrecognized command line options for AM6548 Linux, wrong tool chain or options for 64-bit ARM?

Part Number: PROCESSOR-SDK-AM65X
Other Parts Discussed in Thread: AM6548

Following up on this thread https://e2e.ti.com/support/processors/f/791/t/929328

able to get to the Linux kernel building  with PROCESSOR-SDK-LINUX-AM65X  07_00_01_06 Build date: 08112020  following

export PATH=/home/root1/ti-processor-sdk-linux-am65xx-evm-07_00_01_06/linux-devkit/sysroots/x86_64-arago-linux/usr/bin:$PATH
cd ~/linux-5.4.40+gitAUTOINC+66cf445b76-g66cf445b76

make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- tisdk_am65xx-evm_defconfig O=./build_a53
make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- menuconfig
make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- Image O=./build_a53

But now getting build compile errors.

$ make ARCH=arm CROSS_COMPILE=aarch64-none-linux-gnu- Image O=./build_a53
make[1]: Entering directory '/home/root1/joetemp/AM6548/linux-5.4.40+gitAUTOINC+66cf445b76-g66cf445b76/build_a53'
GEN Makefile
CC scripts/mod/empty.o
aarch64-none-linux-gnu-gcc: error: unrecognized argument in option ‘-mabi=aapcs-linux’
aarch64-none-linux-gnu-gcc: note: valid arguments to ‘-mabi=’ are: ilp32 lp64
aarch64-none-linux-gnu-gcc: error: unrecognized command line option ‘-mfpu=vfp’
aarch64-none-linux-gnu-gcc: error: unrecognized command line option ‘-msoft-float’
../scripts/Makefile.build:265: recipe for target 'scripts/mod/empty.o' failed
make[2]: *** [scripts/mod/empty.o] Error 1
/home/root1/joetemp/AM6548/linux-5.4.40+gitAUTOINC+66cf445b76-g66cf445b76/Makefile:1110: recipe for target 'prepare0' failed
make[1]: *** [prepare0] Error 2

Is this a mismatch of toolchain or options for 64-bit ARM?

  • Hi Joe,

    Now that you have downloaded the SDK.

    On the SDK installation directory Can you just try with:

    make linux

    Best Regards,
    Keerthy

  • Hi Joe

    what I am worried about is it might pick a wrong compiler. Try the below and then try building. I just finish building it so try the below. 

    export CROSS_COMPILE_V8="$TISDK_PATH/linux-devkit/sysroots/x86_64-arago-linux/usr/bin/aarch64-none-linux-gnu-"

    make ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_V8" tisdk_am65xx-evm_defconfig O=./build_a53

    make ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_V8" Image O=./build_a53

  • I just download the latest and did not have any problems to build the kernel with the commands i send you above. I wonder maybe something to do with the path. Let me know the results.

  • Joe

    sounds like you got the kernel source from git correct? As you have the cd below? or if you install the SDK it has placed it in the wrong directory. I suggest that you install the SDK in your root directory first. I wonder if that is your problem.

    "cd ~/linux-5.4.40+gitAUTOINC+66cf445b76-g66cf445b76"

  • >>I wonder maybe something to do with the path.

    Thanks for the reality check.  Found my very subtle typo by following the uBoot doc above (which is wrong anyway, aarch64-linux-gnu- should be aarch64-none-linux-gnu- for ProcessorSDK toolchain). But above works with both 32- and 64-bit toolchains in the same bin directory. Just gotta specify ARCH=arm64 (not arm) like so for Cortex-A53

    export PATH=/home/root1/ti-processor-sdk-linux-am65xx-evm-07_00_01_06/linux-devkit/sysroots/x86_64-arago-linux/usr/bin:$PATH
    cd ~/linux-5.4.40+gitAUTOINC+66cf445b76-g66cf445b76 

    make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- tisdk_am65xx-evm_defconfig O=./build_a53
    make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- menuconfig
    make ARCH=arm64 CROSS_COMPILE=aarch64-none-linux-gnu- Image O=./build_a53

    Thanks!