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 6.1 with BeagleBone Black and PRU

Other Parts Discussed in Thread: AM3359

Trying to get the PRU_Demo code to compile on a new Windows 7 system.  

CCS 6.1 with PRU Compiler

Error:

<Linking>
error #10008-D: cannot find file "rtsv7A8_A_le_eabi.lib"

The rtsv7A8_A_le_eabi.lib file is not on my system.

I found some information on making the required libs manually with "mklib --all" from the command line, but this returns with errors as well.

  • Were there any other messages in the console window at the time you got that error? Could you please post the build console text verbatim?

    Are you using the option --disable_auto_rts?
  • Note that rtsv7A8_A_le_eabi.lib is an ARM library, not a PRU library.

  • I did not change any settings, so they should be the defaults.

    -----------------------------

    **** Build of configuration Release for project PRU_Demo ****

    "C:\\ti\\ccsv6\\utils\\bin\\gmake" -k all
    'Building target: PRU_Demo.out'
    'Invoking: ARM Linker'
    "C:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.2/bin/armcl" -mv7A8 --code_state=32 --float_support=vfplib --abi=eabi -me -O2 --define=am3359 --diag_wrap=off --diag_warning=225 --display_error_number -z -m"PRU_Demo.map" --heap_size=0x800 --stack_size=0x800 -i"C:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.2/lib" -i"C:/ti/ccsv6/tools/compiler/ti-cgt-arm_5.2.2/include" -i"C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/am335x/drivers/Release/" -i"C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/utils/Release/" -i"C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/am335x/beaglebone/platform/Release/" -i"C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/am335x/system_config/Release/" --reread_libs --define=A8_CORE=1 --display_error_number --diag_wrap=off --warn_sections --xml_link_info="PRU_Demo_linkInfo.xml" --rom_model -o "PRU_Demo.out" "./pru.obj" "./pru_cape_demo.obj" "C:/ti/pru/pru_cape/pru_fw/PRU_Audio/Debug/PRU_Audio_image.obj" "C:/ti/pru/pru_cape/pru_fw/PRU_HDQ_TempSensor0/Debug/PRU_HDQ_TempSensor0_image.obj" "C:/ti/pru/pru_cape/pru_fw/PRU_HDQ_TempSensor1/Debug/PRU_HDQ_TempSensor1_image.obj" "C:/ti/pru/pru_cape/pru_fw/PRU_Hardware_UART/Debug/PRU_Hardware_UART_image.obj" "C:/ti/pru/pru_cape/pru_fw/PRU_LED0/Debug/PRU_LED0_image.obj" "C:/ti/pru/pru_cape/pru_fw/PRU_LED1/Debug/PRU_LED1_image.obj" "C:/ti/pru/pru_cape/pru_fw/PRU_Switch/Debug/PRU_Switch_image.obj" "../pru_cape_demo_ccs.cmd" -l"drivers.lib" -l"system.lib" -l"utils.lib" -l"platform.lib" -l"rtsv7A8_A_le_eabi.lib"
    <Linking>
    error #10008-D: cannot find file "rtsv7A8_A_le_eabi.lib"

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

    >> Compilation failure
    __STACK_END C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/am335x/system_config/Release/system.lib<init.obj>
    __TI_auto_init C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/am335x/system_config/Release/system.lib<init.obj>
    __TI_decompress_none
    __TI_decompress_rle24
    __TI_zero_init
    __aeabi_uidivmod C:/ti/AM335X_StarterWare_02_00_01_01/binary/armv7a/cgt_ccs/utils/Release/utils.lib<uartStdio.obj>
    memcpy ./pru.obj
    memset ./pru.obj

    error #10234-D: unresolved symbols remain
    error #10010: errors encountered during linking; "PRU_Demo.out" not built
    gmake: *** [PRU_Demo.out] Error 1
    gmake: Target `all' not remade because of errors.

    **** Build Finished ****
    ----------------------------------------------
  • I suspect that, when you first set up your CCS project, you didn't realize you told CCS you are using the Cortex-A8 core on the AM335x device of the BeagleBone Black.  When you go through the project creation dialog, it defaults to the Cortex-A8 core unless you indicate otherwise.  The PDF attached below is one slide from a larger presentation about a PRU workshop.  This slide shows you to set up the PRU project in that workshop.  Your project setup will be very similar.

    Thanks and regards,

    -George

    BBB Create Project.pdf

  • I didn't create the project, I'm using the source files from here: processors.wiki.ti.com/.../PRU_Cape:_Building_Demos

    I installed everything on a different computer and it gives me the same error.

    Thanks
  • I had to change the "Runtime support library" setting to "automatic" in order for the "rtsv7A8_A_le_eabi.lib" file to be generated.

    Thanks