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.

CCS/AM6548: Example SYSBIOS project for AM6548 ARM A53 won't build

Part Number: AM6548
Other Parts Discussed in Thread: SYSBIOS

Tool/software: Code Composer Studio

"C:\\ti\\ccs910\\ccs\\utils\\bin\\gmake" -k -j 8 all -O

Building file: "../app.cfg"
Invoking: XDCtools
"C:/ti/ccs910/xdctools_3_55_02_22_core/xs" --xdcpath="C:/ti/bios_6_75_02_00/packages;" xdc.tools.configuro -o configPkg -t gnu.targets.arm.A53F -p ti.platforms.cortexA:AM6548 -r release -c "C:/ti/ccs910/ccs/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major-win32" "../app.cfg"
making package.mak (because of package.bld) ...
generating interfaces for package configPkg (because package/package.xdc.inc is older than package.xdc) ...
configuring app.xa53fg from package/cfg/app_pa53fg.cfg ...
generating custom ti.sysbios library makefile ...
Starting build of library sources ...
making C:/asi/sw/AsiAes67/test/rtp_enc_dec_mem_test/am6548_arm/src/sysbios/sysbios.aa53fg ...
asma53fg C:/ti/bios_6_75_02_00/packages/ti/sysbios/family/arm/IntrinsicsSupport_asm_gnu.sv8A ...
Build of libraries failed.
subdir_rules.mk:12: recipe for target 'build-396579569-inproc' failed
arm-none-eabi-gcc.exe: error: unrecognized argument in option '-mcpu=cortex-a53+fp+simd'
arm-none-eabi-gcc.exe: note: valid arguments to '-mcpu=' are: arm1020e arm1020t arm1022e arm1026ej-s arm10e arm10tdmi arm1136j-s arm1136jf-s arm1156t2-s arm1156t2f-s arm1176jz-s arm1176jzf-s arm2 arm250 arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm70 arm700 arm700i arm710 arm7100 arm710c arm710t arm720 arm720t arm740t arm7500 arm7500fe arm7d arm7di arm7dm arm7dmi arm7m arm7tdmi arm7tdmi-s arm8 arm810 arm9 arm920 arm920t arm922t arm926ej-s arm940t arm946e-s arm966e-s arm968e-s arm9e arm9tdmi cortex-a12 cortex-a15 cortex-a15.cortex-a7 cortex-a17 cortex-a17.cortex-a7 cortex-a32 cortex-a35 cortex-a5 cortex-a53 cortex-a57 cortex-a57.cortex-a53 cortex-a7 cortex-a72 cortex-a72.cortex-a53 cortex-a73 cortex-a73.cortex-a35 cortex-a73.cortex-a53 cortex-a8 cortex-a9 cortex-m0 cortex-m0.small-multiply cortex-m0plus cortex-m0plus.small-multiply cortex-m1 cortex-m1.small-multiply cortex-m23 cortex-m3 cortex-m33 cortex-m4 cortex-m7 cortex-r4 cortex-r4f cortex-r5 cortex-r52 cortex-r7 cortex-r8 ep9312 exynos-m1 fa526 fa606te fa626 fa626te fa726te fmp626 generic-armv7-a iwmmxt iwmmxt2 marvell-pj4 mpcore mpcorenovfp native strongarm strongarm110 strongarm1100 strongarm1110 xgene1 xscale; did you mean 'cortex-a53'?
arm-none-eabi-gcc.exe: error: unrecognized argument in option '-mabi=lp64'
arm-none-eabi-gcc.exe: note: valid arguments to '-mabi=' are: aapcs aapcs-linux apcs-gnu atpcs iwmmxt
arm-none-eabi-gcc.exe: error: unrecognized command line option '-mcmodel=large'
arm-none-eabi-gcc.exe: error: unrecognized command line option '-mstrict-align'; did you mean '-Wstrict-aliasing'?
arm-none-eabi-gcc.exe: error: unrecognized command line option '-mfix-cortex-a53-835769'; did you mean '-mfix-cortex-m3-ldrd'?
arm-none-eabi-gcc.exe: error: unrecognized command line option '-mfix-cortex-a53-843419'; did you mean '-mfix-cortex-m3-ldrd'?

I feel like I am using the wrong compiler?

main.c contains

/*
 *  ======== main.c ========
 */

#include <xdc/std.h>

#include <xdc/runtime/System.h>

#include <ti/sysbios/BIOS.h>

#include <ti/sysbios/knl/Task.h>

/*
 *  ======== taskFxn ========
 */
Void taskFxn(UArg a0, UArg a1)
{
    System_printf("enter taskFxn()\n");
	
    Task_sleep(10);
	
    System_printf("exit taskFxn()\n");
}

/*
 *  ======== main ========
 */
Int main()
{ 
    /*
     * use ROV->SysMin to view the characters in the circular buffer
     */
    System_printf("enter main()\n");
	
    BIOS_start();    /* does not return */
    return(0);
}

  • Andrew,

    I believe the Processor SDK ships with its own copy of gcc that should be used that has support for Cortex A53.  The one that ships with CCS is really meant for MCUs (cortex M/R).  The version that shipped with the SDK would likely be installed in C:/ti

    If you go to Window -> Preferences in CCS you can then tell CCS where the compiler is installed.  

    And then in the project you can specify the compiler that should be used (bottom of screen shot).

    Regards,

    John

  • Thanks for the clues John. I added this path

    C:\ti\gcc-linaro-7.2.1-2017.11-i686-mingw32_aarch64-elf

    to the "Tool discovery path", then clicked the refresh button and ended up with a "GNU v7.2.1 (Linaro aarch64)" compiler to choose from. Then I went back to my project and selected that compiler and all seemed to work!