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.

Unable to compile Starterware projects.

Other Parts Discussed in Thread: SYSBIOS

I have downloaded AM335X starterware and installed on to my Windows 7 64 bit.  Upon browsing the installed directory I found that it has some projects under “C:\ti\build\armv7a\cgt_ccs\am335x\evmAM335x”. 

Upon importing and compiling below project

C:\ti\AM335X_StarterWare_02_00_01_01\build\armv7a\cgt_ccs\am335x\beaglebone\gpio

I had problems with

  1. Include search path under Build->ARM Compiler->Include options and
  2. File Search path under Build->ARM Linker->File Search Path

I have resolved compiler include and linker file search path by editing the path accordingly.

After linking, I am getting below error:

 

**** Build of configuration Debug for project gpioLEDBlink ****

 

"C:\\ti_ccs_6_1_0\\ccsv6\\utils\\bin\\gmake" -k -j 8 -s all

'Building file: C:/ti/AM335X_StarterWare_02_00_01_01/examples/beaglebone/gpio/gpioLEDBlink.c'

'Invoking: ARM Compiler'

'Finished building: C:/ti/AM335X_StarterWare_02_00_01_01/examples/beaglebone/gpio/gpioLEDBlink.c'

' '

'Building target: C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/am335x/beaglebone/gpio/Release/Srini.out'

'Invoking: ARM Linker'

<Linking>

'Finished building target: C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/am335x/beaglebone/gpio/Release/Srini.out'

' '

error: failed to read

   "../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/gpio/Debug/gpi

   oLEDBlink.out"

Use of uninitialized value $str in pattern match (m//) at XML_TI_OFD.pm line 2144.

Use of uninitialized value $targ_num in hash element at XML_TI_OFD.pm line 1323.

Unexpected target: unknown at script/mkhex4bin.pl line 261.

fatal error: cannot open input file

   "../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/gpio/Debug/gpi

   oLEDBlink.out": No such file or directory

The system cannot find the path specified.

' '

 

**** Build Finished ****

Any input on this?

Regards

Srinivasa

  • Srinivasa,

    If you change the Build Configuration in the project properties to Release, does it build?

    Build Configurations>Set Active>Release.

    Lali

  • Lali,

    I tried to change to release build as below:

    Project->Properties->Build->configuration to Release build.

    Click on apply and then OK.

    Its not changing to release build.  If I come back, it is back to Debug [Active] hence this is not helping me.

    Regards

    Srinivasa

  • Srinivasa,

    My apologies if I misunderstood, but you are setting it like the below screenshot? Or you will have to go into "manage configurations" and put "Release" as set Active.

    Lali

  • Hi Lali,

    I tried with different project "rtcClock".
    In this also I need to modify

    Include search path under Build->ARM Compiler->Include options and
    File Search path under Build->ARM Linker->File Search Path


    and finally the same error again. This time it is Active->Release build;

    find the errors below:



    **** Build of configuration Release for project rtcClock ****

    "C:\\ti_ccs_6_1_0\\ccsv6\\utils\\bin\\gmake" -k -j 8 -s all
    'Building file: C:/ti/AM335X_StarterWare_02_00_01_01/examples/beaglebone/rtc/rtcClock.c'
    'Invoking: ARM Compiler'
    'Finished building: C:/ti/AM335X_StarterWare_02_00_01_01/examples/beaglebone/rtc/rtcClock.c'
    ' '
    'Building target: C:/ti/AM335X_StarterWare_02_00_01_01/build/armv7a/cgt_ccs/am335x/beaglebone/rtc/../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/rtc/Release/rtcClock.out'
    'Invoking: ARM Linker'
    <Linking>
    'Finished building target: C:/ti/AM335X_StarterWare_02_00_01_01/build/armv7a/cgt_ccs/am335x/beaglebone/rtc/../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/rtc/Release/rtcClock.out'
    ' '
    error: failed to read
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/rtc/Release/rt
    cClock.out"
    Use of uninitialized value $str in pattern match (m//) at XML_TI_OFD.pm line 2144.
    Use of uninitialized value $targ_num in hash element at XML_TI_OFD.pm line 1323.
    Unexpected target: unknown at script/mkhex4bin.pl line 261.
    fatal error: cannot open input file
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/rtc/Release/rt
    cClock.out": No such file or directory
    The system cannot find the path specified.
    ' '

    **** Build Finished ****
  • Srinivasa,

    You have also applied the BBB patch from the release download page?

    Lali
  • Lali,

    Step 2 did not work for me:

    Step 1 : Download the tar.gz file and keep it in the existing StarterWare installation directory.
    Step 2 : unzip and untar the downloaded file and Select 'Yes' when asked to merge any folder or copy
    and replace a file.

    I have unzipped it to a folder and copied all the files from patch file to the respective folder.

    Still having the same problem.

    Srinivasa
  • Srinivasa,

    I was able to import the RTC project, change the build config to Release and compile it without errors. Not sure why you are having issues. Can you try to import the RTC project, just change the build config to Release without making any changes to the search paths, and try?

    **** Clean-only build of configuration Release for project rtcClock ****

    "c:\\ti\\ccsv6\\utils\\bin\\gmake" -k -j 4 -s clean
    gmake: *** No rule to make target `clean'.

    **** Build Finished ****
    **** Build of configuration Release for project rtcClock ****
    "c:\\ti\\ccsv6\\utils\\bin\\gmake" -k -j 4 -s all
    'Building file: C:/ti/AM335X_StarterWare_02_00_01_01/examples/beaglebone/rtc/rtcClock.c'
    'Invoking: ARM Compiler'
    'Finished building: C:/ti/AM335X_StarterWare_02_00_01_01/examples/beaglebone/rtc/rtcClock.c'
    ' '
    'Building target: ../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/rtc/Release/rtcClock.out'
    'Invoking: ARM Linker'
    <Linking>
    'Finished building target: ../../../../../../../binary/armv7a/cgt_ccs/am335x/beaglebone/rtc/Release/rtcClock.out'
    ' '
    ' '
    **** Build Finished ****
  • Lila,

    Upon importing the project from the below path "C:\ti\AM335X_StarterWare_02_00_01_01\build\armv7a\cgt_ccs\am335x\beaglebone\rtc"
    are you modifying paths under compiler and linker section?

    1. Include search path under Build->ARM Compiler->Include options and
    2. File Search path under Build->ARM Linker->File Search Path.

    I am doing this because compiler is not able to find header files and linker is not able to find library files.

    I need to do for all projects not only rtc. I am not sure why I should do this or what is wrong on my PC?


    The below steps should directly work:

    Install AM335X starterware.
    Apply BBB patch.
    Import project from "C:\ti\AM335X_StarterWare_02_00_01_01\build\armv7a\cgt_ccs\am335x\beaglebone\rtc"


    Let me unistall and install, will try again.


    Regards
    Srinivasa
  • Done below steps:



    Uninstall and Install AM335X starterware.
    Apply BBB patch.
    Import project from "C:\ti\AM335X_StarterWare_02_00_01_01\build\armv7a\cgt_ccs\am335x\beaglebone\rtc"

    This time no modifications to any compiler or linker path settings:

    Here is the error dump:


    **** Clean-only build of configuration Debug for project rtcClock ****

    "C:\\ti\\ccsv5\\utils\\bin\\gmake" -k -j 8 -s clean
    Could Not Find C:\Study\ti\binary\armv7a\cgt_ccs\am335x\evmAM335x\rtc\Debug\rtcClock.out
    Could Not Find C:\Study\ti\build\armv7a\cgt_ccs\am335x\evmAM335x\rtc\Debug\rtcClock.pp
    Could Not Find C:\Study\ti\build\armv7a\cgt_ccs\am335x\evmAM335x\rtc\Debug\rtcClock.obj
    'Finished clean'
    ' '

    **** Build Finished ****

    **** Build of configuration Debug for project rtcClock ****

    "C:\\ti\\ccsv5\\utils\\bin\\gmake" -k -j 8 -s all
    'Building file: C:/Study/ti/examples/evmAM335x/rtc/rtcClock.c'
    'Invoking: ARM Compiler'
    'Finished building: C:/Study/ti/examples/evmAM335x/rtc/rtcClock.c'
    ' '
    'Building target: ../../../../../../../binary/armv7a/cgt_ccs/am335x/evmAM335x/rtc/Debug/rtcClock.out'
    'Invoking: ARM Linker'
    <Linking>
    error: cannot find file
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/drivers/Debug/drivers.lib
    "
    error: cannot find file
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/system_config/Debug/syste
    m.lib"
    error: cannot find file
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/evmAM335x/platform/Debug/
    platform.lib"
    error: cannot find file
    "../../../../../../../binary/armv7a/cgt_ccs/utils/Debug/utils.lib"
    warning: automatic library build: using library
    "C:\ti\ccsv5\tools\compiler\arm_5.0.11\lib\rtsv7A8_A_le_eabi.lib" for the
    first time, so it must be built. This may take a few minutes.
    "tdeh_uwentry_arm.asm", REMARK at line 57: [R0003] Including SP in the list is
    deprecated in ARM mode
    STMFD sp!, {r13-r15}

    "tdeh_uwentry_arm.asm", REMARK at line 80: [R0003] Including SP in the list is
    deprecated in ARM mode
    STMFD sp!, {r13-r15}

    "tdeh_uwentry_arm.asm", REMARK at line 97: [R0002] Including both LR and PC in
    the list is deprecated in
    ARM mode
    LDMIA r13, {r0-r15}

    "tdeh_uwentry_arm.asm", REMARK at line 97: [R0003] Including SP in the list is
    deprecated in ARM mode
    LDMIA r13, {r0-r15}

    "setjmp32.asm", REMARK at line 107: [R0003] Including SP in the list is
    deprecated in ARM mode
    STMIA A1!, {V1 - V8, SP, LR}

    "setjmp32.asm", REMARK at line 151: [R0003] Including SP in the list is
    deprecated in ARM mode
    LDMIA A1!, {V1 - V8, SP, LR}

    error: no input section is linked in

    undefined first referenced
    symbol in file
    --------- ----------------
    Entry

    error: unresolved symbols remain
    warning: entry-point symbol "Entry" undefined

    warning: no suitable entry-point found; setting to 0
    error: errors encountered during linking;
    >> Compilation failure
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/evmAM335x/rtc/Debug/rtcCl
    ock.out" not built
    gmake: *** [../../../../../../../binary/armv7a/cgt_ccs/am335x/evmAM335x/rtc/Debug/rtcClock.out] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****


    It is not able to find drivers.lib and other libraries.


    Where is it installed on your PC? Can you just tell me exact path of installation on your PC?

    Link for downloading AM335X Starterware:
    software-dl.ti.com/.../index_FDS.html
    File : Windows Installer
    Patch : Beaglebone black patch

    Hope this is correct. Share your pc installation path.

    Srinivasa
  • Changed the linker path as below:

    Default it was like this:
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/drivers/${ConfigName}/drivers.lib"
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/system_config/${ConfigName}/system.lib"
    "../../../../../../../binary/armv7a/cgt_ccs/am335x/evmAM335x/platform/${ConfigName}/platform.lib"
    "../../../../../../../binary/armv7a/cgt_ccs/utils/${ConfigName}/utils.lib"


    Changed it as below:
    "C:\ti\AM335X_StarterWare_02_00_01_01\binary\armv7a\cgt_ccs\am335x\drivers\Release\drivers.lib"
    "C:\ti\AM335X_StarterWare_02_00_01_01\binary\armv7a\cgt_ccs\am335x\system_config\Release\system.lib"
    "C:\ti\AM335X_StarterWare_02_00_01_01\binary\armv7a\cgt_ccs\am335x\evmAM335x\platform\Release\platform.lib"
    "C:\ti\AM335X_StarterWare_02_00_01_01\binary\armv7a\cgt_ccs\utils\Release\utils.lib"

    Now it is compiling without errors.

    I have to do this for all projects. I am not sure why it not taking the default library paths?


    Regards
    Srinivasa
  • Srinivasa,

    I'm not sure as to why the paths are giving you trouble, I did not have to change them in my setup. Also note that there is a newer version of Starterware that is part of the Sysbios Industrial SDK 2.1.0.1 which was released recently. Can be downloaded here.

    Lali